JdbcTemplete.batchUpdate()
可以采用准备好的语句,并且可以将多个插入触发到同一张表中。
String sql = "INSERT INTO MYTABLE (COL1, COL2) VALUES (?, ?)"
List params = ...
jdbcTemplate.batchUpdate(sql, new BatchPreparedStatementSetter() {
public void setValues(PreparedStatement ps, int i) throws SQLException {
List<String> singleRowParams = params.get(i);
ps.setString(1, singleRowParams.get(0));
ps.setString(2, singleRowParams.get(1));
}
// This is the number of times to run the SQL statement.
public int getBatchSize() {
return params.size();
}
}
);
如何在一次批量更新中将其插入到多个表中?
谢谢
答案 0 :(得分:2)
不,这不可能。考虑一下如果您尝试手动运行此SQL,您将如何做呢?一种替代方法是遍历您的更新并为相关表每次修改SQL。