当前位置:网站首页>MySQL 批量插入demo
MySQL 批量插入demo
2022-07-24 05:19:00 【我惠依旧】
Mysql 批量插入demo代码
public static void main(String[] args) throws ClassNotFoundException, SQLException {
final String url = "jdbc:mysql://127.0.0.1/wvp?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC";
final String name = "com.mysql.cj.jdbc.Driver";
final String user = "root";
final String password = "1234";
Connection conn = null;
// 指定连接类型
Class.forName(name);
// 获取连接
conn = DriverManager.getConnection(url, user, password);
if (conn != null) {
System.out.println("获取连接成功");
// 插入操作
batchInsert(conn);
} else {
System.out.println("获取连接失败");
}
}
public static void batchInsert(Connection conn) {
// 开始时间
Long begin = System.currentTimeMillis();
// sql前缀
String sqlPrefix = "INSERT INTO student (name, age) VALUES ";
try {
// 保存sql后缀
StringBuffer sqlSuffix = new StringBuffer();
// 设置事务为非自动提交
conn.setAutoCommit(false);
// 准备执行语句
PreparedStatement pst = (PreparedStatement) conn.prepareStatement(" ");
// 外层循环,总提交事务次数
for (int i = 1; i <= 100; i++) {
sqlSuffix = new StringBuffer();
// 第j次提交步长
for (int j = 1; j <= 100000; j++) {
// 构建SQL后缀
sqlSuffix.append("('" + "cxx" + j + "'," + 1 + "),");
}
// 构建完整SQL
String sql = sqlPrefix + sqlSuffix.substring(0, sqlSuffix.length() - 1);
// 添加执行SQL
pst.addBatch(sql);
// 执行操作
pst.executeBatch();
// 提交事务
conn.commit();
// 清空上一次添加的数据
sqlSuffix = null;
}
// 头等连接
pst.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
// 结束时间
Long end = System.currentTimeMillis();
// 耗时
System.out.println("1000万条数据插入花费时间 : " + (end - begin) + "ms");
System.out.println("插入完成");
}边栏推荐
猜你喜欢
随机推荐
index为什么不能作为v-for的key?
MySQL之函数运用
4. Draw a red triangle and a yellow square on the screen. Triangle in the back, small; Square in front, big. Using the fusion technology, the triangle can be seen through the square, and the source an
Mapboxgl + GeoServer configuration local map tutorial
PHP 多行文字内容的重复检测功能并统计重复次数
盘点波卡生态潜力项目 | 跨链特性促进多赛道繁荣
special effects - 鼠标移动,出现泡泡拖尾
special effects - 蜘蛛网背景特效
Draw a circle and a square on the screen. The square is in front and the circle is behind. You can move the square through the keyboard. In the following cases, the square can only move within the cir
Summary of data types
函数多种类型
Hex to RGB
New grammar 01_ ES6 new syntax
Latex learning notes (I) - installation configuration
闲来写博~简单说说let和var和const
过渡 效果
渗透测试知识---行业术语
Draw a moving teapot on the screen. The teapot first moves slowly towards the screen, becoming smaller and smaller, becoming more and more blurred; Then it grows bigger and clearer, and keeps repeatin
visibility:hidden 和 display:none
浏览器的本地存储









