mat*_*boy 0 java sql batch-insert apache-commons-dbutils
我们需要使用第三方库来执行 SQL 语句,在开始实施之前,我们希望确保库可以做我们想做的任何事情。我们目前正在评估 Apache DBUtils。
我们尝试执行类似的查询
INSERT INTO MyTable(ColA, ColB, ColC) VALUES (?, ?, ?),
(?, ?, ?),
(?, ?, ?);
Run Code Online (Sandbox Code Playgroud)
使用 insertBatch,但看起来它失败了,因为它想运行类似的东西:
INSERT INTO MyTable(ColA, ColB, ColC) VALUES (?, ?, ?);
INSERT INTO MyTable(ColA, ColB, ColC) VALUES (?, ?, ?);
INSERT INTO MyTable(ColA, ColB, ColC) VALUES (?, ?, ?);
Run Code Online (Sandbox Code Playgroud)
从性能的角度来看,这是更糟糕的。
我们做错了什么吗?有什么办法可以使用Apache DBUtils实现以前的SQL语句吗?
我想你应该做这样的事情:
queryRunner.batch("INSERT INTO MyTable(ColA, ColB, ColC) VALUES (?, ?, ?)",
new Object[][] {
{"A1", "B1", "C1"},
{"A2", "B2", "C2"},
{"A3", "B3", "C3"}});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1839 次 |
| 最近记录: |