我正在尝试使用 Spring JDBC 模板批量更新将大约 5000 个值插入到 MySql 表中,如下所示
http://www.mkyong.com/spring/spring-jdbctemplate-batchupdate-example/
据我所知,它在一次事务中插入的行数与我提供的行数一样多。但它仍然很慢。
我试过像这样构造一个查询
INSERT INTO CUSTOMER " +
"(CUST_ID, NAME, AGE) VALUES (?, ?, ?), (?, ?, ?), (?, ?, ?),(?, ?, ?)....
我有多少行。它执行得更快,但我必须手动形成查询。我想知道对于这种情况是否有批量更新的替代方案?
附言我知道在构建如此大的查询时,应该考虑最大包大小,查询的大小不应超过限制(尽管可以在 MySql 服务器中配置限制)。
最佳答案
您可以按如下方式进行
- 获取连接对象
- 将连接自动提交属性设置为 false。使用
connection.autocommit(false)
- 运行您的插入查询语句。
- 执行
connection.commit();
关于java - spring jdbctemplate批量更新快速替代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29962750/