BEGIN;
INSERT INTO salesinfo SET CustomerID=;
UPDATE inventory SET Quantity=
WHERE item=book;
COMMIT;
事務的另一個重要作用是當多個用戶同時使用相同的數據源時它可以利用鎖定數據庫的方法來為用戶提供一種安全的訪問方式這樣可以保證用戶的操作不被其它的用戶所干擾
鎖定表
盡管事務是維護數據庫完整性的一個非常好的方法但卻因為它的獨占性有時會影響數據庫的MySQL數據庫性能尤其是在很大的應用系統中由於在事務執行的過程中數據庫將會被鎖定因此其它的用戶請求只能暫時等待直到該事務結束如果一個數據庫系統只有少數幾個用戶
來使用事務造成的影響不會成為一個太大的問題但假設有成千上萬的用戶同時訪問一個數據庫系統例如訪問一個電子商務網站就會產生比較嚴重的響應延遲
其實有些情況下我們可以通過鎖定表的方法來獲得更好的性能下面的例子就用鎖定表的方法來完成前面一個例子中事務的功能
LOCK TABLE inventory WRITE
SELECT Quantity FROM inventory
WHEREItem=book;
…
UPDATE inventory SET Quantity=
[] [] [] [] [] []
From:http://tw.wingwit.com/Article/program/MySQL/201311/29747.html