在MySQL中執行命令時,通常都直接被確定提交了。也就是說用戶不用意識此事,所有的命令都會被自動COMMIT。特別是當存儲引擎為MyISAM的情況下,本身它是不支持事務處理的,只要執行了命令,所有的命令部會被提交。
這樣的默認自動提交的功能就被稱為自動提交功能。自動提交功能默認被置為ON的狀態。但是,如果存儲引擎為InnoDB 時,當執行了START TRANSACTION或BEGIN命令(MySQL事務處理-刪除後回滾)後,將不會自動提交了,只有明確執行了COMMIT命令後才會被提交,在這之前可以執行ROLLBACK 命令回滾更新操作。
用戶可以將自動提交功能強制置為OFF。這樣用戶執行SQL語句後將不會被提交了,而執行COMMIT命令才提交,執行ROLLBACK命令回壤。
下面是將自動提交功能置為ON以及置為OFF的具體語法。
將自動提交功能置為ON
將自動提交功能置為OFF
我們將演示自動提交功能設置為OFF後,會出現的什麼樣的變化。置為OFF,我們向表user裡插入一條數據後,看看是否能回滾。
將自動提交功能設置為OFF,執行結果如下。
查看表user中的數據
MySQL控制(關閉、打開)自動提交功能(2)
文章來源網頁編程http://www.uphtm.com,轉載請注明出處:http://www.uphtm.com/database/188.html