InnoDB和 AUTOCOMMIT |
發(fā)布時(shí)間: 2012/8/24 17:44:13 |
在InnoDB中,所有用戶(hù)行為都在事務(wù)內(nèi)發(fā)生。如果自動(dòng)提交模式被允許,每個(gè)SQL語(yǔ)句在它自己上形成一個(gè)單獨(dú)的事務(wù)。MySQL總是帶著允許自動(dòng)提交來(lái)開(kāi)始一個(gè)新連接。
如果自動(dòng)提交模式被用SET AUTOCOMMIT = 0關(guān)閉,那么我們可以認(rèn)為一個(gè)用戶(hù)總是有一個(gè)事務(wù)打開(kāi)著。一個(gè)SQL COMMIT或ROLLBACK語(yǔ)句結(jié)束當(dāng)前事務(wù)并且一個(gè)新事務(wù)開(kāi)始。兩個(gè)語(yǔ)句都釋放所有在當(dāng)前事務(wù)中被設(shè)置的InnoDB鎖定。一個(gè)COMMIT語(yǔ)句意味著在當(dāng)前事務(wù)中做的改變被生成為永久的,并且變成其它用戶(hù)可見(jiàn)的。一個(gè)ROLLBACK語(yǔ)句,在另一方面,撤銷(xiāo)所有當(dāng)前事務(wù)做的修改。 如果連接有被允許的自動(dòng)提交,通過(guò)用明確的START TRANSACTION或BEGIN語(yǔ)句來(lái)開(kāi)始一個(gè)事務(wù),并用COMMIT或者ROLLBACK語(yǔ)句來(lái)結(jié)束它,這樣用戶(hù)仍舊可以執(zhí)行一個(gè)多重語(yǔ)句事務(wù)。 本文出自:億恩科技【1tcdy.com】 服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |