髒讀、不可重複讀、幻讀

髒讀:一個事務讀取到了另一個事務沒有提及的數據

不可重複讀:在一個事務中,兩次讀取同一數據得到內容不同

幻讀:在同一事物中,用同樣的操作讀取兩次,得到的記錄數不相同

 

事務的隔離級別:
Read Uncommitted
數據讀取時不需要鎖定
Read Committed
數據讀取時需要共享鎖定
Repeatable Read
數據讀取時需要排他鎖
Serializable
事務必須等同於串行執行

注意無論任何時候更新行都必須要有排他鎖。
插入行不需要鎖。
在Read Committed隔離級別下,數據讀取完畢後立即釋放共享鎖,而在Repeatable Read隔離級別下,事務保持共享

鎖直到整個事務結束。

在SQL Server中調整事務隔離級別是針對會話的,set tran isolation level後,會話中後來開始的事務都在此隔

離級別上執行。一個事務只能具有一個隔離級別。同一會話中的所有事務必須串行執行。必須通過begin tran語句來覆蓋默認事務範圍

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章