首页 / MYSQL / mysql数据库批量高速插入
mysql数据库批量高速插入
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了mysql数据库批量高速插入,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1593字,纯文字阅读大概需要3分钟。
内容图文
![mysql数据库批量高速插入](/upload/InfoBanner/zyjiaocheng/485/6999c34a6afd471dbd7a005f786adc6a.jpg)
,?,?
)");
for (int i = 0; i < 2000; i++) {
pst.setInt(1, 3);
pst.setString(2, "xx");
pst.setInt(3, 10);
pst.addBatch();
}
pst.executeBatch();
long endTime = System.currentTimeMillis();
System.out.println((endTime - startTime)/1000+"s");
System.out.println("test sql batch--->2000.....");
} catch (SQLException e) {
e.printStackTrace();
}finally {
if(conn!=null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
你会发现时间会是30s 左右。
2k行的数据插入就30秒 。
2w行数据插入时间为940秒(约16min)。
2、改动自己主动提交的 batch
public static void main(String[] args) {
Connection conn = getConn(lsqlurl, luser, lpassword);
long startTime = System.nanoTime();
try {
conn.setAutoCommit(false);
PreparedStatement pst = conn.prepareStatement("insert into test (id,name,age) values (?,?,?)");
for (int i = 0; i < 2000; i++) {
pst.setInt(1, 3);
pst.setString(2, "xx");
pst.setInt(3, 10);
pst.addBatch();
}
pst.executeBatch();
conn.commit();
long endTime = System.nanoTime();
System.out.println((endTime - startTime)/1000000+"ms");
System.out.println("test sql batch--->2000.....");
} catch (SQLException e) {
try {
conn.rollback();
mysql数据库批量高速插入
标签:except nal print 简单 false 时间 not java user
本文系统来源:http://www.cnblogs.com/tlnshuju/p/7081954.html
内容总结
以上是互联网集市为您收集整理的mysql数据库批量高速插入全部内容,希望文章能够帮你解决mysql数据库批量高速插入所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。