在关闭连接时禁用oracle自动提交

时间:2014-04-24 07:59:27

标签: java oracle jdbc

我对关闭连接事件的Oracle自动提交有疑问。

来自oracle docs的信息(http://docs.oracle.com/cd/E16655_01/java.121/e17657.pdf):

  

如果禁用了自动提交模式,并且在未显式提交或回滚上次更改的情况下关闭连接,则会运行隐式COMMIT操作。

所以,我想在JDBC驱动程序中以编程方式禁用此功能。我不会在连接关闭至少一次交易时做自动提交。有可能吗?

P.S。 setAutoCommit更改JDBC操作。 " AUTO_COMMIT"在每个语句上启动新事务并调用commit。这不是我的问题的解决方案。

2 个答案:

答案 0 :(得分:0)

EDIT。可能重复:Does Java Connection.close rollback?

根据javadoc,您应该在调用close方法之前尝试提交或回滚。否则结果是实现定义的。

答案 1 :(得分:-1)

您可以查看setAutoCommit()类的Connection方法。更多详情here