我不执行commit就行了,我还要执行rollback有啥用?
网上查询了下没有什么确切答案,都说要执行rollback才能回滚,可是当我没有执行commit的时候 没有执行rollback 一样回滚了,网上查了很多文字 确没有说不执行rollback和commit一样回滚有啥区别?
巴扎黑2017-04-17 13:16:22
出現錯誤的時候,不用明確呼叫 rollback,會自動回滾。
但有一種需求是:沒有出現錯誤,但是我們需要判斷滿足某種情況後,也需要回滾,這個時候就需要明確調用 rollback 了。
高洛峰2017-04-17 13:16:22
這裡:
http://docs.oracle.com/javase...
意思是說如果事務裡面有操作,直接關閉的行為是由實現確定的,有可能It is strongly recommended that an application explicitly commits or rolls back an active transaction prior to calling the close method. If the close method is called and there s >
有可能commit
。 MySQL 的實作是rollback
,所以你直接關掉也沒問題。 rollback