关于这个转账的例子

关于这个转账的例子

http://img1.sycdn.imooc.com//climg/5ed0da71095d0de607230128.jpg

老师您好,这个例子我没听懂

为什么A能看见B的未提交数据,就会让B的回滚失败呢?

A和B是两个独立的事务吧?为什么会相互影响呢

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕美 2020-05-29 19:00:35

同学,你好。第一个例子讲的是read uncommitted读取未提交的事务,引出在该例子中不能使用此事务隔离级别。前期分析都是在read uncommitted基础上分析的,因此A可以看到B未提交的事务,从而引出READ COMMITTED事务,读取其他事务已提交的数据

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~

  • 为什么B回滚以后,银行的钱没有变成6000,而是5900呢?为什么B事务会回滚失败? A事务的隔离权限是 read uncommitted或者read committed为什么会影响到B的回滚是否成功?
    2020-06-03 07:30:36
  • 同学,你好。A事务读取的是B事务未提交的数据,会将未提交状态当做实际状态来计算,在A事务转账后Scott账户中余额是5900,回滚只影响未提交状态不影响实际状态,5900块钱是实际的状态,因此B事务在回滚后还是5900。祝学习愉快~~~~
    2020-06-03 10:01:47
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师