Spring JDBCTemplate中是否支持addBatch操作?

3

我想执行多个单独的SQL语句,就像在JDBC菜谱中:

Statement stmt = con.createStatement();
stmt.addBatch(
    "update registration set balance=balance-5.00
    where theuser="+theuser);
stmt.addBatch(
"insert into auctionitems(
               description, startprice) 
    values("+description+","+startprice+")");

我必须直接使用Statement对象吗?我正在寻找一些提供相同功能的Spring JDBCTemplate服务。

额外加分: 更好的是一个服务,它可以接受一个包含多个用;分隔的SQL语句的文本,并执行它们所有。

谢谢,Ido

1个回答

2

JdbcTemplate有两个batchUpdate方法提供此功能(javadoc)。你使用哪一个取决于需要多少控制。如果您需要完全控制,可以使用execute(StatementCallback)甚至execute(ConnectionCallback)方法。


1
哦,我错过了batchUpdate(String [] sqls),只看到了使用相同语句更新多行的那个。谢谢。 - ihadanny

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接