关于隔离性的问题
A账户:50
B账户:50
事务A :A-50,B+50
事务B:A+20,B-20
问题1、隔离性的意思:事务A和事务B执行的时候,必须等其中一个事务执行完毕commit之后,另一个事务才能执行,是这个意思吗?
问题2、假设现在没有隔离性。
事务A执行A-50 , 事务B执行A+20,B-20,此时事务A的第二个操作错误,回滚了。因为A数据已经被事务B操作过了,所以找不回A的数据的原始状态。但是我认为,此时事务A回滚,那么你把你执行过的A-50撤销就好了,最后结果是A=70 B=30 结果没问题。。。。
隔离性应该怎么理解?
5
收起
正在回答
2回答
同学,你好。
1、隔离性:同一时间,只允许一个事务请求同一数据,不同的事务之间彼此没有任何干扰。比如A正在从一张银行卡中取钱,在A取钱的过程结束前,B不能向这张卡转账。
2、当事务A对A账户操作时,事务B是对A账户操作不了的,要符合事务中的原子性。原子性:事务开始后所有操作,要么全部做完,要么全部不做,不可能停滞在中间环节。
如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~
相似问题
登录后可查看更多问答,登录/注册
2.Python操作三大数据库
- 参与学习 人
- 提交作业 625 份
- 解答问题 2669 个
数据库作为企业储存和管理数据的根本,掌握数据库是每个开发工程师必备的技能,本阶段带你学会用Python操作MySQL、Redis和MongoDB三大主流数据库。夯实数据库基础。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星