使用jdbc连接oracle数据库进行百万级数据插入操作。

默认的插入操作

insert into tablename()values()每进行一条记录的插入都会进行commit提交操作,因此使得存储速度受到极大的影响,那么如何解决此类问题呢?

两种方法:

一、通过设置commit提交动作为非默认形式,然后设置每插入3000行(根据自己具体需求设定)进行一次提交

Class.forName("oracle.jdbc.driver.OracleDriver");

conn = DriverManager.getConnection("jdbc: oracle:thin: @127.0.0.1:1521:abc", "scott", "tiger");

conn.setAutoCommit(false);//设置默认提交方式为false

stmt = conn.createStatement();

state.execute(sql);

conn.commit();//提交事务二、按照批次进行插入,然后根据自己需求进行统一批次提交

Class.forName("oracle.jdbc.driver.OracleDriver");

conn = DriverManager.getConnection("jdbc: oracle:thin: @127.0.0.1:1521:abc", "scott", "tiger");

state = conn.createStatement();

for (String sql : sqlList)

{

state.addBatch(sql);

if (++count % 1000 == 0)

{

state.executeBatch();

System.out.println("现已完成"+count+"条记录插入");

}

}

state.executeBatch(); 归结起来其实两种方法原理是一样的,都是按照批次进行存储。大大提高了数据存储效率,此两种方法省略了事务提交失败回滚的操作,大家可以根据需要进行回滚操作。

oracle 百万数据存储,jdbc oracle 百万级数据量存储相关推荐

  1. oracle undo数据文件坏,oracle undo数据文件损坏故障处理案例

    oracleundo数据文件损坏故障处理案例 大家都知道Oracle的数据都存储在数据文件中,undo表空间存储的数据是某些变更操作的前镜像以及一致性读数据,而且undo表空间是循环利用的,一段时间后 ...

  2. oracle中数据文件创建,操作oracle中的数据文件

    收藏于http://dev.yesky.com/296/8090796.shtml Oracle数据库 中管理表空间和数据文件 数据库的三大组成部分:数据文件,控制文件,Redo日志. 表空间分为系统 ...

  3. 百万数据修改索引,百万数据修改主键

    当百万数据时,如果修改主键,那么会自动重建索引,所以操作会非常慢,经常会超时,错误提示类似: 超时时间已到.在操作完成之前超时时间已过或服务器未响应 解决方案:不要采用手动添加主键或者索引,而采用sq ...

  4. oracle更新数据没反应,ORACLE更新数据时如果有就更新没有就插入

    SQL写法: begin update table_name set salary = 10000 where emp_id = 5; if sql%notfound then insert into ...

  5. oracle表数据如何恢复,ORACLE如何恢复被delete的表数据

    ORACLE如何恢复被delete的表数据 发布时间:2020-05-12 18:39:36 来源:亿速云 阅读:397 作者:Leah 这篇文章给大家分享的是ORACLE如何恢复被delete的表数 ...

  6. oracle修改数据前备份,Oracle 之利用BBED修改数据块SCN—-没有备份数据文件的数据恢复...

    测试环境 OS:redhat6.6 oracle:12.1.0.2 BBED(OracleBlockBrowerandEDitor Tool),用来直接查看和修改数据文件数据的一个工具,是Oracle ...

  7. oracle 查看数据泵,1.Oracle数据泵介绍

    1. Oracle 数据泵介绍 Oracle数据泵是用来替换原始的export和import工具(exp,imp) 它从Oracle 10g开始提供 它可以快速和高效的将数据从一个数据库移动到另一个数 ...

  8. python如何往oracle写入数据_python3向oracle插入数据

    1.保证与oracle服务器版本统一 2.python3 ,oracle服务器,oracle client统一使用64位或者32位 2.先解压缩instantclient-basic-linux.x6 ...

  9. oracle修改数据文件个数,Oracle修改数据文件名/移动数据文件

    生产上有时会用到数据文件的迁移,下边示例几种数据文件的迁移方法. 数据库版本sys@ORCL>select * from v$version; select * from v$version; ...

最新文章

  1. #6280. 数列分块入门 4(区间修改,区间查询)
  2. spring4 整合 mybatis3 配置文件
  3. rails3高级查询
  4. python No migrations to apply
  5. 反走样和OpenGL多重采样
  6. c语言程序设计安徽区笔试部分,2021年安徽省二级C语言程序设计笔试样题-20210419093521.doc-原创力文档...
  7. SQLServer导入excel报错因缺少插件
  8. 你是否适合当一个Java程序员?一文看清
  9. 【BERT实践】看不懂bert没关系,用起来so easy!
  10. rust狗阳的师傅是谁_杨幂迪丽热巴新剧同天官宣,你更期待谁呢?
  11. Win Server 2016 安装 IIS 服务详细步骤-图文
  12. matlab多行注释方法
  13. 在计算机里打折的符号是哪个,计算器中的符号
  14. 学计算机编程技校排名,学编程什么学校最好?
  15. 张德芬 如何自我成长
  16. CiteSpace知识图谱
  17. 阿里云公共DNS安全传输服务介绍(DoH/DoT)
  18. shell脚本编程笔记(十)—— 正则表达式
  19. android电视分辨率是多少合适,电视分辨率多少合适
  20. 【转】面向对象 -多线程 理论知识

热门文章

  1. 连 CEO 都不香了?这些互联网大佬接连辞任
  2. 厉害!40 张图看懂分布式追踪系统原理及实践
  3. 全网首次公开!iOS14 到来前,开发者必需的时间表及 To do list
  4. VUE 的使用,学会这些就足够了!| 原力计划
  5. 业务复杂就用 if-else?刚来的技术大佬用这招彻底干掉了!
  6. 盘点那些跨界玩到飞起的程序员们!
  7. Github 开源趋势榜 TOP 1:英伟达升级发布二代 StyleGAN!
  8. 小白程序员仅用 5 分钟入职 BAT,他只做了这件事!
  9. 如何理解自然语言处理中的注意力机制? | 技术头条
  10. 黑客利用智能灯泡窃取用户数据!