MySQL事務的介紹 事務的特性 事務的開啟

2022-07-30 17:54:12 字數 1020 閱讀 1280

事務介紹:

簡單的說,事務就是指邏輯上的一組sql語句操作,組成這組操作的各個sql語句,要麼全成功要麼全失敗。

例如:a給b轉賬5元,流程是從a的賬戶扣除5元,把5元打入b的賬戶,b的賬戶上收到5元。

sql語句為:update account set money=money-5 where name='a'; update account set money=money+5 where name='b';

上述的sql語句操作,在事務中要麼都執行,要麼都不執行; 這是事務的原子性(acomicity)

事務的四大特性(acid)

1.原子性(atomicity)

事務是乙個不可分割的單位,事務中的所有sql等操作要麼都發生,要麼都不發生。

2.一致性(consistency)

事務發生前和發生後,資料的完整性必須保持一致。

3.隔離性(isolation)

當併發訪問資料庫時,乙個正在執行的事務在執行完畢前,對於其他的回話是不可見的,多個併發事務之間的資料是相互隔離的。有個備份引數--single-transaction(innodb使用)

4.永續性(durability)

乙個事務一旦被提交,它對資料庫中的資料改變時永久性的。如果出了錯誤,事務也不允許撤銷,只能通過"補償事務"。

開啟事務:

資料庫預設事務是自動提交的,發一條sql執行一條。如果想多條sql放在乙個事務中執行,則需要使用事務進行處理。當開啟乙個事務,並且沒有提交,mysql會自動回滾事務,或者使用rollback命令手動回滾事務。

start transaction 開啟事務

rollback 回滾事務

commit 提交事務

mysql>set global autocommit=1; #開啟自動提交

mysql>set global autocommit=0; #禁止自動提交  如果不執行commit,退出後,之前執行的操作就丟失了。

MySQL事務的特性

事務具有很嚴格的定義,必須同時滿足4個特徵 原子性 一致性 隔離性 永續性,也就是人們常說的acid標準 原子性,是指乙個事務必須被視為,乙個不可分割的最小工作單元,只有事務中所有的資料庫操作都執行成功,才算整個事務執行成功 事務中,如果有任何乙個sql語句執行失敗,已經執行成功的sql語句,也必須...

mysql中事務的特性 mysql中事務的四大特性

原子性 atomicity 事務就像 原子 一樣,不可被分割,組成事務的dml操作語句要麼全成功,要麼全失敗,不可能出現部分成功部分失敗的情況。一致性 consistency 一旦事務完成,不管是成功的,還是失敗的,整個系統處於資料一致的狀態。隔離性 isolation 乙個事務的執行不會被另乙個事...

MySQL事務特性

目錄 什麼是事務?acid 原子性 atomicity 一致性 consistency 隔離性 isolation 永續性 durability 事務併發問題 事務隔離級別 一組原子性的sql指令集合,要麼全部執行成功,要麼全部執行失敗。整個事務所有操作要麼全部提交成功,要麼全部失敗回滾,不可能只成...