資料庫事務及隔離級別

2021-10-04 01:54:31 字數 1400 閱讀 4302

a.概念:

b.操作:

c.測試

‐‐ 建立賬戶表

create

table account (

id int

primary

keyauto_increment

,name varchar(10

),money double);

‐‐ 新增資料

insert

into account (name, money)

values

('zhangsan'

,1000),

('lisi'

,1000

);

d.mysql資料庫中事務預設自動提交

自動提交:

mysql就是自動提交的

一條dml(增刪改)語句會自動提交一次事務。

手動提交:

oracle 資料庫預設是手動提交事務

需要先開啟事務,再提交

原子性:

永續性:

隔離性:

一致性:a.概念:

b.存在問題:

c.隔離級別:a.髒讀:乙個事務讀到另乙個事務未提交的資料.

步驟一:開啟兩個視窗a,b.

步驟二:檢視兩個視窗的隔離級別:

步驟三:設定a、b視窗隔離級別為read uncommitted:

步驟四:分別在兩個視窗中開啟事務:

步驟五:在b視窗完成轉賬的操作:

步驟六:在a視窗查詢賬號的資訊.為了解決髒讀問題,將隔離級別設定為read committed,這樣就只能讀到提交的資料。但是依然存在不可重複讀問題!

不可重複讀

步驟一:開啟兩個視窗a,b

步驟二:檢視兩個視窗的隔離級別:

步驟三:設定a、b視窗的隔離級別為read committed

步驟四:在兩個視窗中分別開啟事務:

步驟五:在b視窗進行轉賬操作:

步驟六:在a視窗進行查詢:

步驟七:在b視窗提交事務:

步驟八:在a視窗查詢:步驟一:開啟兩個視窗a,b

步驟二:檢視兩個視窗的隔離級別:

步驟三:設定a、b視窗的隔離級別為repeatable read

步驟四:在兩個視窗中分別開啟事務:

步驟五:在b視窗完成轉賬的操作:

步驟六:在a視窗進行第一次查詢:

步驟七:在b視窗中提交事務!

步驟八:在a視窗進行第二次查詢:

注意事項步驟一:開啟兩個視窗a,b

步驟二:檢視兩個視窗的隔離級別:

步驟三:設定a視窗的隔離級別為serializable.

步驟四:在兩個視窗中分別開啟事務:

步驟五:在b視窗插入記錄:

步驟六:在a視窗進行查詢.

步驟七:在b視窗提交事務:

資料庫事務及隔離級別

1資料庫四大特性 資料庫具有事務安全性,同時也具有acid四大特性 原子性 一致性 隔離性 永續性 原子性 atomicity 原子性是指事務包含的所有操作要麼全部成功,要麼全部失敗回滾,這和前面兩篇部落格介紹事務的功能是一樣的概念,因此事務的操作如果成功就必須要完全應用到資料庫,如果操作失敗則不能...

資料庫事務及隔離級別

1 原子性 atomicity 事務開始後所有操作,要麼全部做完,要麼全部不做,不可能停滯在中間環節。事務執行過程 錯,會回滾到事務開始前的狀態,所有的操作就像沒有發生一樣。也就是說事務是乙個不可分割的整體,就像化學中學過的原子,是物質構成的基本單位。2 一致性 consistency 事務開始前和...

資料庫事務及隔離級別

原子性 atomicity 原子性是指事務包含的所有操作要麼全部成功,要麼全部失敗回滾,這和前面兩篇部落格介紹事務的功能是一樣的概念,因此事務的操作如果成功就必須要完全應用到資料庫,如果操作失敗則不能對資料庫有任何影響。一致性 consistency 一致性是指事務必須使資料庫從乙個一致性狀態變換到...