在數據庫的插入、刪除和修改操作時,只有當事務在提交到數據庫時才算完成。
SQL語句提交數據有三種類型:顯式提交、隱式提交及自動提交。
【1】顯式提交
顯式提交。即用COMMIT命令直接完成的提交方式。
【2】隱式提交
隱式提交。用SQL命令間接完成的提交方式。這些命令是:
ALTER、CREATE、DISCONNECT、DROP、AUDIT、COMMENT、CONNECT、EXIT、GRANT、NOAUDIT、QUIT、REVOKE、RENAME。
【3】自動提交
自動提交。若把AUTOCOMMIT設置為NO,則在插入、修改、刪除語句執行后,系統將自動進行提交的方式。
設置數據庫自動commit方式,可以使用:
mysql> SET AUTOCOMMIT ON;
【4】MySQL語句是否需要COMMIT?
MySQL語句在進行如插入(insert)操作的時候究竟需不需要COMMIT,這具體得依據存儲引擎而定。
如果是不支持事務的引擎,如myisam,則是否commit都是沒有效的;
如果是支持事務的引擎,如innodb,則得知道支持是否自動提交事務(即commit)
看自己的數據庫是否支持自動commit,可以使用命令:
mysql> show variables like '%autocommit%';
來進行查看,如果是OFF,即不自動commit,需要手動commit操作(命令行可以直接“commit;”命令),否則是自動commit。
Good Good Study, Day Day Up.
順序 選擇 循環 總結