batchUpdate sql 写法
时间: 2023-07-19 18:36:25 浏览: 211
SqlServer中批量update语句
batchUpdate sql 是指一次性执行多个 SQL 语句的操作,通常用于批量插入、更新、删除等操作。在 Java 中,可以使用 JDBC 的 Batch 操作来实现 batchUpdate sql。
以下是 batchUpdate sql 的示例代码:
```
String[] sqls = {"INSERT INTO user(name, age) VALUES ('Tom', 20)",
"INSERT INTO user(name, age) VALUES ('Jerry', 22)",
"UPDATE user SET age = 21 WHERE name = 'Tom'",
"DELETE FROM user WHERE name = 'Jerry'"};
Connection conn = null;
PreparedStatement ps = null;
try {
conn = DriverManager.getConnection(url, username, password);
conn.setAutoCommit(false); // 手动提交事务
ps = conn.prepareStatement(""); // 创建一个空的 PreparedStatement 对象
for (String sql : sqls) {
ps.addBatch(sql); // 将 SQL 语句添加到批处理中
}
int[] results = ps.executeBatch(); // 执行批处理并返回结果数组
conn.commit(); // 提交事务
System.out.println("batchUpdate sql 执行成功!共影响 " + results.length + " 条数据。");
} catch (SQLException e) {
conn.rollback(); // 回滚事务
e.printStackTrace();
} finally {
// 关闭连接和 PreparedStatement 对象
}
```
在上面的示例中,我们首先定义了一个包含多条 SQL 语句的数组 sqls,然后使用 JDBC 的 Connection 和 PreparedStatement 对象实现了批处理操作。在 for 循环中,我们将每条 SQL 语句添加到 PreparedStatement 对象的批处理中,最后通过 executeBatch() 方法一次性执行所有 SQL 语句,并返回结果数组。如果批处理执行成功,则会提交事务并输出结果信息;否则会回滚事务并输出异常信息。
阅读全文