多个小的java-database事务或一个大的java-database事务?哪个更快?

时间:2012-12-30 16:53:59

标签: java mysql database performance jdbc

我有一个包含140列的MySQL表和一个大约80k行的txt文件,即表的7.5k个条目(行)。

哪个更快?

“插入myTable(< 140列名称>)值(< 140列条目>);” 我应该一次输入一整行(每行只有一个数据库事务,但是因为有140列,所以单独的插入语句会很长)

“更新myTable set = where = ...;” 逐个输入列条目(进行许多数据库事务)

3 个答案:

答案 0 :(得分:3)

我建议你使用批量插入:

BULK INSERT List FROM 'c:\Txt.txt' WITH (FIELDTERMINATOR = '","')

这是更清洁的方法

答案 1 :(得分:1)

运行的提交/查询越少,它就越快。玩弄不同的块大小。例如。插入x行数并提交。重复,直到完成所有行。大部分性能取决于表中配置的触发器和索引。

答案 2 :(得分:0)

一笔大交易总是比80k交易更快。

是什么让您相信创建80k交易会更快?