髒讀是指,乙個事務的處理過程中讀取到了另乙個未提交的事務中的資料。
不可重複讀指,在乙個範圍內,多次查詢去返回了不同的資料值,這是由於在查詢間隔,被另乙個事務修改並提交了。
虛讀(幻讀)指,乙個事務對一批資料的name欄位做出全部修改後(將該字段的值從a改為b)(未提交事務),此時另乙個事務又新增了一條資料,並且name欄位的值為a(提交事務),此時第乙個事務提交後,檢視資料會發現有一條資料沒有修改呢,自己感覺是不是產生幻覺。這就是幻讀(虛讀)。
總結:虛讀(幻讀)、和不可重複讀都是讀取了另一條已經提交的事務,所不同的是,不可重複讀查詢的都是同一條資料,而幻讀(虛讀)針對的是一批資料整體(比如在計算資料的個數,新增資料時計算id(id為自增)的值)。
1. serializable (序列化):
可避免髒讀、不可重複讀、幻讀的發生。
2. repeatable read (可重複讀):可避免髒讀、不可重複讀的發生。
3. read committed (讀已提交):可避免髒讀的發生。
4. read uncommitted (讀未提交):最低級別,任何情況都無法保證。
資料庫事務和事務隔離級別
事務的定義很簡單,就是一組操作,這些操作要麼都執行,要麼都不執行,這一組操作是不可分割的.在資料庫中,事務具有acid特性.也就是原子性 atomicity 一致性 consistency 隔離性 isolation 永續性 durability 原子性是指事務是乙個不可分割的一組操作,要麼都發生,...
資料庫事務和隔離級別
1 事務是乙個邏輯單元內的一系列操作。2 事務分兩種 讀取事務 select 修改事務 insert update 原子性 atomicity 事務內的所有操作,要麼全部成功,要麼全部失敗回滾 不能對資料庫有任何影響 一致性 consistency 事務前後,資料的完整性必須保持一致 隔離性 iso...
資料庫事務和隔離級別
事務的四大特性包括原子性 一致性 隔離性 永續性。事務的併發問題 sql標準定義了四種隔離級別,由低到高,分別是 讀未提交 read uncommitted 讀提交 read committed 可重複讀 repeatable read 序列化 serializable 事務隔離級別是為了解決事務併...