DbUtils是否支持一次性执行多条sql

javaSir 发布于 2013/12/06 10:53
阅读 1K+
收藏 0

这样的sql能够一次性执行;如下,请大师们指点

update table set name='1111';insert into table2 value('1111','2225');delete from table3 where id='11212';

加载中
0
戴威
戴威
Jdbc支持这样做吗?
0
魔力猫
魔力猫
去看JDBC批量提交功能
0
tsl0922
tsl0922

好像没有吧,也不建议这么做,除非你可以获取每条sql语句的执行结果。

但DbUtils有个batch方法,这个方法一般是用来批量执行同一条sql但不同参数的操作,返回一个数组,是每次执行影响的行数。

0
wobushiwangj
wobushiwangj

当然支持啦,

conn.setAutoCommit(false);
statement = conn.createStatement();
for (String sql : sqls) {
statement.addBatch(sql);
}
int result[] = statement.executeBatch();
conn.commit();

0
mlovewt
mlovewt

begin 

update table set name='1111';

insert into table2 value('1111','2225');

delete from table3 where id='11212';

end;

返回顶部
顶部