事務隔離級別

2021-06-23 07:01:55 字數 493 閱讀 4961

1.read uncommitted 讀未提交。可以讀取未提交的資料。比如:我有乙個賬戶裡面有1000元,對方給我打了1000還未提交,我這時檢視會有2000,我以為收到了,放心睡覺去了,可是對方他這1000給回滾了。實際我賬戶還是1000  這是髒讀

2.read committed 讀提交。讀到資料是已經提交過的資料。還是上面的例子。對方給我打1000如果不提交。我檢視我的賬戶餘額是1000,只有對方提交了我的賬戶才會變成2000。好了,我現在有2000了,我準備把這2000存到小金庫裡,可是這個時候我老婆網上買東西花了500,在我轉賬之前提交了,我轉賬時發生餘額不足。這就是不可重複讀。

3.repeatable read 重複讀。 吸取上次教訓。我把隔離級別公升級了。當我檢視賬戶餘額要轉賬的時候事務就已經開啟了,這種情況下,我老婆就不能在我檢視的時候買東西了。但是會出現幻讀   幻讀是指兩次讀取的結果集不一樣,是由於乙個事務內前後兩次讀取之間有其他事務的插入操作。

4.序列化   所有的事務按著順序乙個乙個進行。

事務隔離級別

1 serializable 最嚴格的spring事務隔離級別,事務序列執行,資源消耗最大 3 read committed 大多數主流資料庫的預設spring事務隔離等級,保證了乙個事務不會讀到另乙個並行事務已修改但未提交的資料,避免了 髒讀取 該級別適用於大多數系統。4 read uncommi...

事務隔離級別

四種隔離級別 隔離級別 髒 讀不可重複讀取 幻 像讀操作未提交 read uncommitted 是是 是讀操作已提交 read committed 否是 是可重複讀 repeatable read 否否 是快照否否 否可序列讀 serializable 否否 否 sql server 還支援使用行...

事務隔離級別

需要防止的現象和事務隔離級別 ansi iso sql 標準 sql92 定義了四種事務隔離級別 transaction isolation level 這四種隔離級別所能提供的事務處理能力各不相同。這些事務隔離級別是針對三種現象定義的,在併發事務執行時,需要阻止這三種現象 中的一種或多種發生。三種...