如果我使用具有“自动提交关闭”的 JDBC 连接创建准备好的语句,我是否需要调用 commit() 以使事务永久化或仅准备调用就足够了?请注意,我只想准备一个语句并保留它以供以后执行。
非常感谢!
最佳答案
答案是:是的,你必须调用 commit。
“准备”步骤不做任何与服务器上的事务处理相关的事情。
您必须调用 executeUpdate()
(或 execute()
)启动事务(假设使用的 SQL 实际上启动了事务)
使用没有自动提交的 PreparedStatement 需要以下步骤:
executeUpdate()
(或 execute()
取决于语句的类型)Connection.commit()
为了让事情更清楚:调用
prepareStatement()
不是 需要 commit()
.
关于jdbc - SQL PreparedStatement 和自动提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10814913/