如果要自动执行多个语句,则需要使用一个事务。JDBC连接默认为“自动提交”模式,这意味着每个语句都在其自己的事务中执行。因此,您首先需要使用禁用自动提交模式
Connection.setAutoCommit(false)。
在禁用自动提交模式的情况下,已执行的语句将在当前事务中执行,如果没有当前事务,则将启动一个语句。然后,可以使用进行提交
Connection.commit()或使用进行回滚
Connection.rollback()。
您将需要执行以下操作:
try (Connection connection = DriverManager.getConnection(...)) { connection.setAutoCommit(false); try (Statement stmt = connection.createStatement()) { stmt.executeUpdate(<your first update>); stmt.executeUpdate(<your second update>); connection.commit(); } catch (SQLException e) { connection.rollback(); throw e; }}有关更多详细信息,请参见JDBC教程章节“
使用事务”。
并且请了解准备好的语句。将值连接到查询字符串中是不好的,因为如果您忘记对值进行转义,则可能导致SQL注入或奇怪的错误。另请参见JDBC教程章节“
使用准备好的语句”。



