位置: 编程技术 - 正文

使用JDBC在MySQL数据库中如何快速批量插入数据(mysql jdbc)

编辑:rootadmin

推荐整理分享使用JDBC在MySQL数据库中如何快速批量插入数据(mysql jdbc),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mysql-jdbc,jdbc添加数据到mysql,jdbc操作mysql,jdbc添加数据到mysql,使用jdbc操作数据库步骤,jdbc mysql8,mysql-jdbc,jdbc操作mysql数据库,内容如对您有帮助,希望把文章链接给更多的朋友!

使用JDBC连接MySQL数据库进行数据插入的时候,特别是大批量数据连续插入(W+),如何提高效率呢?

在JDBC编程接口中Statement 有两个方法特别值得注意:

Adds a set of parameters to this PreparedStatement object's batch of commands.

Submits a batch of commands to the database for execution and if all commands execute successfully, returns an array of update counts. The int elements of the array that is returned are ordered to correspond to the commands in the batch, which are ordered according to the order in which they were added to the batch.

通过使用addBatch()和executeBatch()这一对方法可以实现批量处理数据。

不过值得注意的是,首先需要在数据库链接中设置手动提交,connection.setAutoCommit(false),然后在执行Statement之后执行connection.commit()。

执行完成以后:

使用JDBC在MySQL数据库中如何快速批量插入数据(mysql jdbc)

All down : Convert finished. All spend time/s :

一共W+,执行时间一共花费 秒.

这个效率仍然不高,似乎没有达到想要的效果,需要进一步改进。

在MySQL JDBC连接字符串中还可以加入参数,

rewriteBatchedStatements=true,mysql默认关闭了batch处理,通过此参数进行打开,这个参数可以重写向数据库提交的SQL语句。

useServerPrepStmts=false,如果不开启(useServerPrepStmts=false),使用com.mysql.jdbc.PreparedStatement进行本地SQL拼装,最后送到db上就是已经替换了&#;后的最终SQL.

在此稍加改进,连接字符串中加入下面语句(代码构造方法中去掉注释):connectStr += "&#;useServerPrepStmts=false&rewriteBatchedStatements=true";

再次执行如下:

All down : Convert finished. All spend time/s :

同样的数据量,这次执行只花费了秒 ,处理效率大大提高.

标签: mysql jdbc

本文链接地址:https://www.jiuchutong.com/biancheng/349236.html 转载请保留说明!

上一篇:Mysql Explain 详细介绍

下一篇:CentOS中mysql cluster安装部署教程

  • 非居民个人利息所得个税税率
  • 如何办理车辆购置置换补贴手续
  • 港建费征收管理办法
  • 保险公司报销修手机
  • 工程产值是怎么计算的
  • 以前年度成本多入了怎样调整
  • 以前年度多交所得税,跨年退回怎么做会计分录
  • 纸质承兑怎么收付
  • 公众号注册验证方式
  • 收到车辆保险返还会计分录
  • 租个人房子开发票税率是多少
  • 银行回单手续费怎么找到对应金额
  • 营改增行业注释
  • 进项发票和销项发票金额相同还需要交税金吗
  • 开专票一定要公章吗
  • 单位定期存款支取
  • 电子承兑怎么开户
  • 增值税附加税怎么计提
  • 银行汇票超期退回怎么办
  • 财务费用为什么会出现负数
  • 营改增后城建税和教育费附加包含在哪里
  • 此windows副本不是正版影响电脑使用吗
  • 企业第一年利润是多少
  • 小规模纳税人确认收入时要确认税吗
  • 如何调整文件夹内文件的顺序
  • linux怎么操作
  • win10怎么看已安装的驱动
  • Win10宽带无法连接
  • linux操作系统为用户提供的接口为
  • 白兰花的养殖方法和注意事项和病虫害
  • 预计负债的所得税怎么算
  • 旅行社的会计
  • Symfony2 session用法实例分析
  • php throw
  • 涨点是什么意思
  • php是面向对象编程吗
  • php如何实现
  • php微信公众号消息推送
  • threejs怎么用
  • mac apache php
  • 来料加工企业的划分标准
  • 长期应付款项目,根据专项应付款和长期应付款
  • PostgreSQL教程(十九):SQL语言函数
  • 民间非营利组织会计制度
  • mysql Non-Transactional Database Only(只支持MyISAM)
  • 银行存款期初余额调整会计分录
  • 暂估成本跨年后收到票可以直接附在暂估凭证
  • 收据作为原始凭证的依据
  • 购买产品样品计入什么科目
  • 电子银行承兑汇票
  • 购买机器的运费计入什么科目
  • 连锁零售药房
  • 收到保险公司的发票怎么做账
  • 物业管理费发票税率
  • 财政拨付注册资金怎么填
  • 计入福利费
  • 5000以下的固定资产一次性计入费用
  • 生产成本和主营业务收入的关系
  • 经典sql查询语句50条
  • mac下安装python
  • CentOS7 64位安装mysql图文教程
  • win8系统笔记本出现意外错误
  • linux搭建gitlab
  • centosgui
  • winxp怎么做系统
  • macos 关闭屏幕
  • win10系统更新后
  • 命令行sudo无效
  • win8鼠标右键无法弹出菜单
  • win7系统开机黑屏只有鼠标且打不开任务管理器
  • 批处理修改文件修改日期
  • perl do
  • jquery.validate[.unobtrusive]和Bootstrap实现tooltip错误提示问题分析
  • fw开发
  • jQuery Ajax 加载数据时异步显示加载动画
  • 江西国税发票查询官网
  • 发票红冲步骤图片
  • 电子税务局登录入口
  • etc可以抵扣吗
  • 宝安区西乡税务所长
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设