首頁  >  文章  >  資料庫  >  MySQL事務實例分析

MySQL事務實例分析

WBOY
WBOY轉載
2023-05-27 10:44:10915瀏覽

MySQL 交易主要用於處理操作量大,複雜度高的資料。比如說,在人員管理系統中,你刪除一個人員,你既需要刪除人員的基本資料,也要刪除和該人員相關的信息,如信箱,文章等等,這樣,這些資料庫操作語句就構成一個事務。

MySQL事務實例分析

方式1

START TRANSACTION 或BEGIN 開始新的交易COMMIT 提交當前事務ROLLBACK 回滾目前事務

這是大家熟知的一種方式,其中開啟事務的方式start transaction 和begin 是相同的。

MySQL事務實例分析

方式 2

SET autocommit = 0;

預設為 autocommit = 1,是自動提交交易的。 autommit 是 session 等級的,就是目前連線更改了 autocommit,對其他連線沒有影響。設定 autocommit 之後,本次連接的所有 sql 都是事務的形式,例如每次 commit 提交。

MySQL事務實例分析

透過截圖可以看出,有一個交易在執行,因為設定了set autocommit = 0;,所以後面的update 操作修改結果,其他session 並不會查到(RR 級別)。

這時候就需要自己手動執行 commit。

注意的是,autocommit 沒有進行更改,此時 autocommit 值還是 0,也就表示這個 session 後續的 sql 都是需要手動 commit 的。

MySQL事務實例分析

以上是MySQL事務實例分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除