并發操作會帶來哪些數據不一致性
并發操作會帶來哪些數據不一致性
2.臟讀:當一個事務正在訪問數據,并且對數據進行了修改,而這種修改還沒有提交到數據庫中,這時,另外一個事務也訪問這個數據,然后使用了這個數據。因為這個數據是還沒有提交的數據,那么另外一個事務讀到的這個數據是臟數據。3.不可重復讀:一個事務重新讀取前面讀取過的數據,發現該數據已經被另一個已提交的事務修改過。即事務1讀取某一數據后,事務2對其做了修改,當事務1再次讀數據時,得到的與第一次不同的值。在一個事務中前后兩次讀取的結果并不致,導致了不可重復讀。
導讀2.臟讀:當一個事務正在訪問數據,并且對數據進行了修改,而這種修改還沒有提交到數據庫中,這時,另外一個事務也訪問這個數據,然后使用了這個數據。因為這個數據是還沒有提交的數據,那么另外一個事務讀到的這個數據是臟數據。3.不可重復讀:一個事務重新讀取前面讀取過的數據,發現該數據已經被另一個已提交的事務修改過。即事務1讀取某一數據后,事務2對其做了修改,當事務1再次讀數據時,得到的與第一次不同的值。在一個事務中前后兩次讀取的結果并不致,導致了不可重復讀。
![](https://img.51dongshi.com/20241201/wz/18266502652.jpg)
1.丟失修改:當兩個或多個事務選擇同一數據,并且基于最初選定的值修改該數據時,會發生丟失修改問題。2.臟讀:當一個事務正在訪問數據,并且對數據進行了修改,而這種修改還沒有提交到數據庫中,這時,另外一個事務也訪問這個數據,然后使用了這個數據。因為這個數據是還沒有提交的數據,那么另外一個事務讀到的這個數據是臟數據。3.不可重復讀:一個事務重新讀取前面讀取過的數據,發現該數據已經被另一個已提交的事務修改過。即事務1讀取某一數據后,事務2對其做了修改,當事務1再次讀數據時,得到的與第一次不同的值。在一個事務中前后兩次讀取的結果并不致,導致了不可重復讀。
并發操作會帶來哪些數據不一致性
2.臟讀:當一個事務正在訪問數據,并且對數據進行了修改,而這種修改還沒有提交到數據庫中,這時,另外一個事務也訪問這個數據,然后使用了這個數據。因為這個數據是還沒有提交的數據,那么另外一個事務讀到的這個數據是臟數據。3.不可重復讀:一個事務重新讀取前面讀取過的數據,發現該數據已經被另一個已提交的事務修改過。即事務1讀取某一數據后,事務2對其做了修改,當事務1再次讀數據時,得到的與第一次不同的值。在一個事務中前后兩次讀取的結果并不致,導致了不可重復讀。
為你推薦