在本文中,小编将为大家介绍如何在Java中以编程的方式将【比特币-美元】市场数据CSV文件转化为XLSX 文件。...然后,它创建一个 名为 BTC_Monthly的表 ,其中包含 CSV 数据并自动调整 表中的列。...然后,代码在整个表格范围内添加一个StockVOHLC 类型的工作表 (成交量-开盘-高-低-收盘)新图表,设置图表标题,将系列添加到图表中,将类别轴单位更改为“月”,更新类别轴刻度标签方向和数字格式,...5)返回XLSX 最后,创建一个Main类,并添加相关方法作为整个程序的入口,右键执行程序后就可以获得最终的Excel XLSX文件。...vnd.openxmlformats-officedocument.spreadsheetml.sheet", "BTC_Chart.xlsx"); } } // Get() 运行结果如下所示: 总结 以上就是在C# 中以编程的方式将
同时当表启用了压缩时,Oracle会默认的将该表中数据块的pctfree设置为0,这也暗示了我们基础压缩应该作为一种只读数据的压缩策略。...该行必须标志为已删除(以正常的方式), 2. **49号标志**的“使用计数”也必须减少1。...; 1') 第一列是一个序列,第二列从AAAA到EEEE循环,第三列从AAAAAAAAAA到JJJJJJJJJJ循环,最后一列是10个字符,从1-50循环(占位符用"\ "表示)。...我将第一列的值‘XXXXXXXXXX’更新为‘YYYYYYYYYY’,正如你所见,最后一块dump数据依然包含标志0x32和0x45,但是标志0x37已经被实际值所替换掉。...所以当你试图更新基础表压缩中的数据时,Oracle可能将标志扩展为实际值,但它会尽可能的做最小化的扩展。即使数据在压缩后pctfree为0的情况下数据块中依然有一小部分空间。
q 强制退出文件 vim中不同保存退出是有区别的 :x 写入文件并退出(仅当文件被修改时才写入,并更新文件和修改时间;否则不会更新文件修改时间) :wq和ZZ 强制写入并退出(文件没有被修改也强制写入...,并更新文件的修改时间) 操作回退和恢复: u 回退到上一次操作 U 本行改动恢复 ctrl+r 与u操作相反的操作 移动操作: j 下移一行 k 上移一行 h 左移一列 l 右移一列 0...移动到开头 $ 移动到结尾 w 移动到下一个单词开头 e 移动到下一个单词结尾 fx 移动到本行之后第一个出现x字母的位置 tx 移动到本行之后第一个出现x字母的前一个位置 gg 跳到文件首 G 跳到文件尾...相当于显示文本的窗口向上滚半屏。光标所处的行数随滚屏而改变。 CTRL-D使文本向上滚动半屏。相当于显示文本的窗口向下滚半屏。光标所处的行数随滚屏而改变。 CTRL-E使文本向上滚动一行。...光标所处的行数不变。 CTRL-Y使文本向下滚动一行。光标所处的行数不变。 CTRL-F 向前滚动一整屏。滚动后光标处于第一行。 CTRL-B向后滚动一整屏。滚动后光标处于最后一行。
InnoDB 回滚 事务执行过程中,改变(插入、更新、删除)表中的每条数据,都会对应产生一条 undo 日志。...savepoint 中,保存着它创建之前,最后产生的那条 undo 日志的编号,回滚到这条 undo 日志的下一条 undo 日志就完事了。...以 SQL 5 为例,创建 savept2 之前,最后一条 undo 日志是插入记录 产生的,编号为 2。...以回滚主键索引记录为例,过程如下: 读取最新的 undo 日志(编号为 4)。 解析 undo 日志得到 。 删除 t1 表中 id = 70 的记录。...把 t1 表中 id = 10 的记录的 i1 字段值,从 100 改回 101。
处理工作表 插入新工作表:Shift+F11或Alt+Shift+F1 移动到工作簿中的下一张工作表:Ctrl+PageDown 移动到工作簿中的上一张工作表:Ctrl+PageUp 选定当前工作表和下一张工作表...在工作表内移动和滚动 向上、下、左或右移动一个单元格:箭头键 移动到当前数据区域的边缘:Ctrl+箭头键 移动到行首:Home 移动到工作表的开头:Ctrl+Home 移动到工作表的最后一个单元格,位于数据中的最右列的最下行...以“结束”模式移动或滚动 打开或关闭“结束”模式:End 在一行或一列内以数据块为单位移动:End+箭头键 移动到工作表的最后一个单元格,在数据中所占用的最右列的最下一行中:End+Home 移动到当前行中最右边的非空单元格...Shift+箭头键 将选定区域扩展到与活动单元格在同一列或同一行的最后一个非空单元格:Ctrl+Shift+箭头键 将选定区域扩展到行首:Shift+Home 将选定区域扩展到工作表的开始处:Ctrl+...将选定区域扩展到与活动单元格在同一列或同一行的最后一个非空单元格:End+Shift+箭头键 将选定区域扩展到工作表的最后一个使用的单元格(右下角):End+Shift+Home 将选定区域扩展到当前行中的最后一个单元格
JDBC JDBC英文名为:Java Data Base Connectivity(Java数据库连接),官方解释它是Java编程语言和广泛的数据库之间独立于数据库的连接标准的Java API 根本上说...因为在最后需要释放资源!...excel表格 while (set.next()){ //每调用一次next()就会向下移动一行,首次调用会移动到第一行 } 移动行数后,就可以通过set中提供的方法,来获取每一列的数据。...作为占位符,它会预编译一个SQL语句,通过直接将我们的内容进行替换的方式来填写数据。...一旦关闭自动提交,那么现在执行所有的操作如果在最后不进行commit()来提交事务的话,那么所有的操作都会丢失 也可以使用rollback()来手动回滚之前的全部操作 con.setAutoCommit
1.0 java的集合 集合分为值value[collection],key-value[map]. 存储值的分为list,和set。list是线性表,包括循序表和链表,所以有序,可以重复。...第一范式:数据库中的 每一列都不可分割的基本数据项。即实体某个属性不能有多个值,或不能有重复的值。...第二范式:表中每一行都可被唯一区分,为实现区分通常需要表中加一列,以存储实列的唯一标识(主键) 第三范式:一个数据库中不包含已在其它表中已包含的非主关键字(外键) 反3范式,有的时候,需要效率,可以设置重复的字段...AOP:面向切面编程 核心原理:在使用动态代理的设计模式在执行方法前后或出现异常做出相关的逻辑。...二级缓存是SesionFactory级别的缓存,从应用启动到应用介绍有效果。是可以选择的,默认没有2级缓存,需要手动开启。 什么样的数据适合放到2级缓存中? 1.0 很少被修改的数据。
SQL(Structured Query Language)结构化查询语言是数据库的核心语言,是高级的非过程化编程语言,也是经典的声明式编程范式实现。...SQL通用语法 SQL 语句可以单行或多行书写,以分号结尾。 可使用空格和缩进来增强语句的可读性。 MySQL 数据库的 SQL 语句不区分大小写,关键字建议使用大写。...2, … 列名n 数据类型n ); 注意:最后一列,不需要加逗号, 数据库类型: int:整数类型 age int, double:小数类型 score double(5,2) date...alter table 表名 rename to 新的表名; -- 修改表的字符集 alter table 表名 character set 字符集名称; -- 添加一列 alter table 表名...如果不加任何条件,则会将表中所有记录全部修改。 DQL:查询表中的记录 DQL(Data Query Language)数据查询语言,数据检索语句,用于从表中获取数据。
屏幕滚动 Ctrl+u => 上滚1/2页 Ctrl+d => 下滚1/2页 Ctrl+f => 上滚1页 Ctrl+b => 下滚1页 zz => 置当前行于当前屏幕正中 zt => 置当前行于当前屏幕顶部...` => 跳转到跳转之前的光标位置(不可指定计数) '' => 同上 `" => 跳转到最后编辑的光标位置(不可指定计数) '" => 同上 `[ => 跳转到最后修改的开始位置(不可指定计数) '[...=> 同上 `] => 跳转到最后修改的结束位置(不可指定计数) '] => 同上 `. => 跳转到文件最后被改动的位置(不可指定计数) '. => 同上 Ctrl+o => 跳转到跳转表较早的位置...Ctrl+i => 跳转到跳转表较晚的位置 :marks => 列出标记 :jumps => 列出跳转表 5....将1~3行文字写到新的文件filename中 :1,3 w filename 将1~3行文附加到新的文件filename中 :1,3 w >> filename 9.
匹配最左前缀 查找姓为Allen的人,即只用索引的第一列。 匹配列前缀 匹配某一列的值的开头部分,例如查找所有以J开头的姓的人。 匹配范围值 查找姓在Allen和Barrymore之间的人。...如果多个列的哈希值相同,索引会以链表的方式存放多个指针记录到同一个哈希条目中。 因为索引自身只存储对应的哈希值,所以索引的结构十分紧凑,哈希索引查找的速度非常快。...聚集索引并不是一种单独的索引类型,而是一种数据存储方式。当表有聚集索引的时候,它的数据行实际上存放在叶子页中。一个表不可能有两个地方存放数据,所以一个表只能有一个聚集索引。...可以看到,叶子节点存储了整个表的数据,而不是只有索引列,每个叶子节点包含了主键值、事务ID、用于事务和MVCC的回滚指针以及所有的剩余列(col2)。 二级索引分布如下: ?...聚集索引将索引和数据保存在同一个B树中,因此从聚集索引中获取数据比在非聚集索引中要快一些。 聚集索引的缺点: 插入速度严重依赖插入顺序。按照主键的顺序插入是加载数据到InnoDB表中速度最快的方式。
应用中不可直接使用日志系统 (Log 4 j 、 Logback) 中的 API ,而应依赖使用日志框架 SLF 4 J 中的 API ,使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一。...事务不要滥用,事务影响数据库的QPS,使用事务的地方需要考虑各方面的回滚。...order by最后的字段是组合索引的一部分,并且放在索引组合顺序的最后,避免出现file_sort的情况,影响查询性能。 索引 a_b_c where a = ? and b = ?...CSRF跨站请求伪造是一类常见的编程漏洞,对于存在CSRF漏洞的应用网站,攻击者可以事先构造好URL,只要受害用户一访问,后台便在用户不知情的情况下对数据库进行修改。...有try块放到事务代码中,catch后,需要事务回滚,一定注意手动回滚。
JDBC资源,关闭与数据库的连接 conn.close(); 上面就是是JDBC编程的基本流程,下面对这个过程中涉及到的一些类与方法做简单介绍: 三、相关的类与方法 1、DriverManager类...例如: // 假设rs是前面进行查询操作返回的ResultSet对象 while(rs.next()){ // 输出结果 } 用next()方法可以实现访问每一个数据行,那么如何获取数据行中的每一列数据呢...为实现最大的可移植性,应按从左到右的顺序读取每一行中的结果集列,并且每一列只能读取一次。 getter方法用列名检索时传入的列名称不区分大小写。 当多个列具有相同的名称时,将返回第一个匹配列的值。...ResultSet对象中的给定行号 boolean first() 将光标移动到此ResultSet对象的第一行 void beforeFirst() 将光标移动到此ResultSet对象的前面,紧挨着第一行...boolean isFirst() 检索光标是否在此ResultSet对象的第一行上 boolean last() 将光标移动到此ResultSet对象的最后一行 void afterLast() 将光标移动到此
平台下的编程平台)主要用来进行一些脚本程序的编写 二、vim/vi的三种工作模式 ?...这些命令可用来保存文件、读取文件内容、执行 Shell 命令、设置Vi参数、以正则表达式的方式查找字符串或替换字符串等。...光标定位在文件中第一次出现字符串string的行首位置。 ...3.2、退出vi 建议在退出vi前,先按ESC键,以确保当前vi的状态为命令方式,然后再键入“:”(冒号),输入下列命令,退出vi。 ...$(即Shift+4):移动到当前行的结尾处 H(大写):使光标移动到屏幕的顶部 M(大写):使光标移动到屏幕的中间 L(大写):使光标移动到屏幕的底部 Ctrl+b:上滚一屏。
(self, query, args) //移动到下一个结果集 nextset(self) cursor用来接收返回值的方法 //接收全部的返回结果行. fetchall(self) //接收size条返回结果行...db.rollback() # 关闭数据库连接 db.close() 也可以以变量的方式传递参数,如下: .................................. user_id =...EMPLOYEE表中salary(工资)字段大于1000的所有数据为例: #!...,以下实例将 test表中的 SEX 字段全部修改为 'M',AGE 字段递增1: # encoding: utf-8 #!...db.rollback() 对于支持事务的数据库, 在Python数据库编程中,当游标建立之时,就自动开始了一个隐形的数据库事务。
从编程语言的视角来看,SQL是一种强大而灵活的语言,具有嵌套特性,允许用户以高效且简洁的方式与数据库进行交互。通过SQL,用户可以轻松地对数据库中的数据进行CRUD等操作,从而满足各种数据处理需求。...SQL 的基本原理 作为一种高级的非过程化编程语言,SQL允许用户在高层数据结构上工作,无需用户指定对数据的存放方法或了解具体的数据存放方式。...SQL语句可以根据用户的需要进行组合和嵌套,以实现复杂的查询和操作。 声明式编程:采用声明式编程范式,用户只需指定所需的结果,而无需指定如何获得这些结果。...可以通过“create view view_name 查询语句”创建视图,然后就可以通过与表查询类似的方式查询数据了。 临时表是用于在数据库操作中暂存数据的表,例如用在多步骤的数据转换过程中。...如果其中一个操作失败,则需要回滚整个事务,以确保数据保持一致状态。 事务确保了数据库的一致性和完整性,提供了并发控制和恢复机制。
介于操作系统和编程应用程序项目之间。...RENAME table user [to] users; 需求: 需要在刚才的user表的一列 addess 更改为 address alter TABLE users CHANGE addess...drop table user; 需求:查询表中的所有数据 -- 固定格式: select * from 表的名称 -- `*` 代表的是表中的所有行和所有列 select * from users;...需求: 查询user表的表结构 -- 第一种方式 desc user -- 第二种方式 show columns from users; MySQL 注释: 减号 减号 空格 -- 多行注释 以/*开头...* from users where name like '_____' ; 需求: 在用户表进行查询姓j,名称最后为y的用户信息 select * from users where name like
本文大纲如下, 后台上传文件 线上后台项目有一个消息推送的功能,运营新建一条通知消息时,需要一起上传一列包含用户 id 的文件,来给文件中包含的指定用户推送系统消息。...但是 CSV 文件针对复杂电子表格操作的支持就没 Excel 功能那么强大了,不过在这个只有一列的文件上传业务里够用了。...大事务 @Transactional 是 Spring 框架提供得事务注解,相信这是许多人都知道的,但是在一些高性能场景下,是不建议使用的,推荐通过编程式事务来手动控制事务提交或者回滚,减少事务影响范围...在极高性能优先的场景下,我们甚至可以考虑不使用事务,使用本地消息表 + 消息队列来实现最终一致性就行 。...在 Java 里通常是指序列化方式,Jdk 自带得序列化方式对比 Protobuf、fst、Hession 等在序列化速度和大小的表现上都没有优势,甚至可以用垃圾形容。
』三个中的任何一个按钮,就可以将光标移动到最底下那一列。在 这个模式当中, 可以提供你『搜寻资料』的动作,而读取、存盘、大量取代字符、离开 vi 、显 示行号等等的动作则是在此模式中达成的!...0 或功能键[Home] 这是数字『 0 』:移动到这一列的最前面字符处 (常用) $ 或功能键[End] 移动到这一列的最后面字符处(常用) H 光标移动到这个屏幕的最上方那一列的第一个字符 M 光标移动到这个屏幕的中央那一列的第一个字符...L 光标移动到这个屏幕的最下方那一列的第一个字符 G 移动到这个文件的最后一列(常用) nG n 为数字。...删除光标所在的向下 n 列,例如 20dd 则是删除 20 列 (常用) d1G 删除光标所在到第一列的所有数据(常用) dG 删除光标所在到最后一列的所有数据(常用) d$ 删除游标所在处,到该列的最后一个字符...此时你可以按下『 y 』来进行复制,当你按下 y 之后,反白的区块就会消失不见 最后,将光标移动到第一列的最右边,并且再用编辑模式向右按两个空格键,回到一般指令模式后,再按下『 p 』后粘贴 192.168.1.1
第一范式: 列不可分 1NF(第一范式)是对属性具有原子性的要求,不可再分,例如: 如果认为最后一列还可以再分成出生年,出生月,出生日,则它就不满足第一范式的要求。...正确的做法: ---- 3)数据库索引 什么是索引? 索引是对数据库表中一个或多个列的值进行排序的数据结构,以协助快速查询、更新数据库表中数据。 你也可以这样理解:索引就是加快检索表中数据的方法。...查询的数据来源于不同的表,而查询者希望以统一的方式查询,这样也可以建立一个视图,把多个表查询结果联合起来,查询者只需要直接从视图中获取数据,不必考虑数据来源于不同表所带来的差异。...InnoDB中必须包含只有该字段的索引,并且引擎的自动增长列必须是索引,如果是组合索引也必须是组合索引的第一列。...,写在最后,然后依次类推 也就是说:选择记录条数最少的表放在最后 如果有3个以上的表连接查询: 如果三个表是有关系的话,将引用最多的表,放在最后,然后依次类推。
索引无法存储null值,当使用is null或is not nulli时会全表扫描 like查询以"%"开头 对于复合索引,查询条件中没有给出索引中第一列的值时 mysql内部评估全表扫描比索引快时...字段允许适当冗余,以提高查询性能,但必须考虑数据一致。e.g. 商品类目名称使用频率高,字段长度短,名称基本一成不变,可在相关联的表中冗余存储类目名称, 避免关联查询 。...可以使用如下方式来避免 sum 的 NPE 问题。...说明:以学生和成绩的关系为例,学生表的 student_id 是主键,成绩表的 student_id 则为外键。...另外,使用事务的地方需要考虑各方面的回滚方案,包括缓存回滚、搜索引擎回滚、消息补偿、统计修正等。
领取专属 10元无门槛券
手把手带您无忧上云