mysql 事务autocommit_亲身实验mysql配置中autocommit和事务的关系
生活随笔
收集整理的這篇文章主要介紹了
mysql 事务autocommit_亲身实验mysql配置中autocommit和事务的关系
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
話說親身實驗mysql配置中autocommit和事務的關系,是由于項目中用到的mysql事務沒能回滾,我用的是InnoDB的引擎,就開始追查原因。這一查不要緊,發現網上如出一轍的說法竟也不可信,還是親身實驗最靠譜。
下面更正幾種常見錯誤的說法:
1、mysql使用InnoDB的引擎,那么是自動開啟事務的,也就是每一條sql都是一個事務(除了select)。
2、由于第一條的原因,所以我們需要autocommit為on,否則每個query都要寫一個commit才能提交。
3、在mysql的配置中,默認缺省autocommit就是為on,這里要注意,不用非要去mysql配置文件中顯示地配置一下。
4、最關鍵的來了,當我們顯示地開啟一個事務,也就是寫了begin的時候,autocommit對此事務不構成影響。而不是網上大家說的,必須要寫一個query臨時設置autocommit為off,否則比如三個query只能回滾最后一個query,這是完全不對的。
以上,請對此文章感興趣的童鞋一定親身實驗一下,才能印象深刻。歡迎大家討論指正。
總結
以上是生活随笔為你收集整理的mysql 事务autocommit_亲身实验mysql配置中autocommit和事务的关系的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: class传参 python_Pytho
- 下一篇: php mysql 失败_在php中插入