当前位置: 首页 > news >正文

JDBC批量插入数据

PreparedStatement的一些好处

1.PreparedStatement可以防止SQL注入

2.PreparedStatement可以操作Blob数据,Statement做不到.

3.PreparedStatement可以实现更高效的批量操作

演示PreparedStatement批量操作

在数据库操作中

update,delete后面如果没有条件,本身就可以就可以进行批量操作

因此这里演示主要针对与insert语句

如果使用PreparedStatement进行更加高效的批量插入

建表演示

CREATE TABLE goods (
id INT PRIMARY KEY auto_increment,
NAME VARCHAR ( 25 ));

用Statement

PareparedStatement比Statement快的原因

用PreparedStatement   方式1  稍微快点   这个好像慢了   但是理论来讲是可以快的

下面演示

PreparedStatement批量操作:  addBatch(),executeBatch(),clearBatch()

哈哈哈  好像更加慢了

只是讲理论,就按理论来好了

Mysql默认情况下是不支持批处理的(5.几的时候支持了 具体忘记了)   但是这里自己电脑装的mysql8.0是可以的   

如果不行,按下面操作

mysql服务器默认是关闭批处理的,我们需要通过一个参数,让mysql开启批处理的支持。
?rewriteBatchedStatements=true 写在配置文件的url后面

另外有可能,要执行的不是2000的整除  比如说20005 或者19999这样,也简单

注意  写了之后差别好大

加了?rewriteBatchedStatements=true之后  存入100W条数据

还可以优化  终极优化

原先是2000条一提交写入数据库   添加事务   最后一次性提交

插入1亿条数据

EXPLAIN SELECT * FROM goods WHERE id = 1111;

这将返回一个执行计划,包括表的连接方式、索引的使用情况以及其他关于查询执行的信息。你可以查看该执行计划,以获取关于查询性能的一些洞察。

相关文章:

  • 南京市建设厅网站微信推广朋友圈广告
  • 广东网站建设微信官网开发代写文章质量高的平台
  • 长春老火车站图片上海网络公司seo
  • 哪个网站做的效果图好网上做广告宣传
  • 网站建设结单 优帮云关键字挖掘爱站网
  • 界首工程建设信息网站杭州seo渠道排名
  • 基于SSM的摄影约拍系统
  • 竞赛选题 深度学习YOLOv5车辆颜色识别检测 - python opencv
  • C语言达到什么水平才能从事单片机工作
  • 架构实战关键知识点
  • Macos数字音乐库:Elsten Software Bliss for Mac
  • Go 匿名函数与闭包
  • ES知识点全面整理
  • a-table 动态列宽拖拽 vue
  • 关于网络协议的若干问题(一)
  • JavaEE-http/https/Tomcat(下)
  • HTTP/2 中的漏洞
  • element ui el-table表格复选框,弹框关闭取消打勾选择
  • centos清理日志和缓存
  • grafana api创建dashboard 记录
  • 【unity】【VR】白马VR课堂系列-VR开发核心基础04-主体设置-XR Rig的引入和设置
  • 从硬件结构到软件
  • C++入门(1):命名空间,IO流 输入输出,缺省参数
  • Flink kafka 数据汇不指定分区器导致的问题
  • go语言输出带颜色字体
  • docker 入门教程