MySQL事務機制
阿新 • • 發佈:2022-04-18
事務的ACID屬性
原子性,一致性,隔離性,永續性
事務的原子性:
一個事務中所有的操作要麼全部完成,要麼全部失敗。事務執行後,不允許停留在中間某個狀態
事務的一致性:
不管在任何給定的時間、併發事務有多少,事務必須保證執行結果的一致性。
事務的隔離性:
隔離性要求事務不受其他併發事務的影響,如同在給定的時間內,該事務是資料庫唯一執行的事物。
事務的永續性:
事務一旦提交,結果便是永久性的。即便發生宕機,仍然可以依靠事務日誌完成資料的持久化。
#啟動事務
start transaction;
delete from t_emp;
delete from t_dept;
select * from t_emp;
select * from t_dept;
#提交事務
commit;
#回滾事務
rollback;
事務的四個隔離級別
事務一
start transaction;
update t_emp set sal=1;
事務二
set session transaction isolation level read uncommitted;
start transaction;
select empno,ename,sal from t_emp;
commit;
事務二能夠讀取到事務一未提交的資料