数据库

2019-03-01  本文已影响0人  苏州城外无故人

数据库隔离级别:

1.丢失数据
A读取书的价格100,B读取书的价格100, A : 100 + 20 = 120, 此时 B : 100 + 30 = 130. 导致A的修改丢失。
在写数据库的时候要写锁。
-Read uncommitted

2.脏数据
A执行书的价格100 + 20 = 120, 加了写锁, 此时B读取数值为120,A发现自己执行错误,突然回滚,书的价格变为100.此时B再读取书的价格,发现变成了100.
在读取的时候增加读锁,读完之后立即释放锁,读锁与写锁不可同时使用。
-Read committed

3.不可重复读
小明执行A = B + C, 小明获取B,C的读锁,B = 100, C = 30;释放读锁。 A = 130.
此时小黑 B = 50; 小明A = 150; 重复读出错。
--在读数据的时候一直锁定,,直到事物提交才释放读锁。
--Repeatable read

4.幻读
小明对身高180的人进行修改,标注高。此时小黑增加了一行180数据,小明自以为修改结束,却发现还有一行未修改。
--Serializable

上一篇下一篇

猜你喜欢

热点阅读