关于READ UNCOMMITTED和REPEATABLE READ
来源:3-14 锁模块之事务并发访问产生的问题以及事务隔离机制
long真困
2019-03-20
老师你好,你在上节课READ UNCOMMITTED这个事务级别下的更新语句是set 900 + 200,最后balance为1100,导致了数据错误,而在本节课中的REPEATABLE READ这个事务级别下的更新语句是set balance -100,结果数据无误。第二个更新语句是有使用变量的。我比较疑惑的地方就是说,其实在REPEATABLE READ事务级别下,使用类似第一个更新语句如 set 1600 -100还是一样的会有数据错误的情况发生呀,这样不是还是会出现数据脏读的情况么?麻烦老师为我解答一下,谢谢!
写回答
1回答
-
翔仔
2019-03-21
同学好,咱们里面举例是站在调用数据库的应用的基础上的,脏读指的是读取别的事务还未提交的数据,在Read UNCOMMITTED确实会发生,但是在REPEATABLE READ下面,只会读取已提交的事务,因此后续读出来的结果是最新的已经提交的结果呢。
10
相似问题