什么是幻读,脏读,不可重复读呢?
什么是幻读,脏读,不可重复读呢?
收藏
复制链接
微信扫码分享
在小程序上查看
分享
8条回答
默认
最新
事务A、B交替执行,事务A被事务B干扰到了,因为事务A读取到事务B未提交的数据,这就是脏读
在一个事务范围内,两个相同的查询,读取同一条记录,却返回了不同的数据,这就是不可重复读。
事务A查询一个范围的结果集,另一个并发事务B往这个范围中插入/删除了数据,并静悄悄地提交,然后事务A再次查询相同的范围,两次读取得到的结果集不一样了,这就是幻读。
可以看我这篇文章哈:https://juejin.cn/post/6844904115353436174#heading-8
评论
有用 2
1.脏读:当前事务读取到了其它事务未提交的数据。
2.不可重复读:在一个事务中,查询结果是这个,当其它事务提交的时候,再查询发现结果变了,这种现象就是不可重复读。
3.幻读:事务A第一次查询得到一行记录a,事务B提交修改后记录b,事务A第二次查询得到两行记录,记录a和记录b。
4.可重复读:在一个事务中,别的事务提交了,查询结果和别的事务没提交前是一样的,查询结果不会变,这种现象叫做可以重复读。当本次事务提交了,再查询结果就会改变。
评论
有用 11.脏读:当前事务读取到了其它事务未提交的数据。 2.不可重复读:在一个事务中,查询结果是这个,当其它事务提交的时候,再查询发现结果变了,这种现象就是不可重复读。 3.幻读:事务A第一次查询得到一行记录a,事务B提交修改后记录b,事务A第二次查询得到两行记录,记录a和记录b。 4.可重复读:在一个事务中,别的事务提交了,查询结果和别的事务没提交前是一样的,查询结果不会变,这种现象叫做可以重复读。当本次事务提交了,再查询结果就会改变。
评论
有用 41.脏读:当前事务读取到了其它事务未提交的数据。 2.不可重复读:在一个事务中,查询结果是这个,当其它事务提交的时候,再查询发现结果变了,这种现象就是不可重复读。 3.幻读:事务A第一次查询得到一行记录a,事务B提交修改后记录b,事务A第二次查询得到两行记录,记录a和记录b。 4.可重复读:在一个事务中,别的事务提交了,查询结果和别的事务没提交前是一样的,查询结果不会变,这种现象叫做可以重复读。当本次事务提交了,再查询结果就会改变。
评论
有用 6查询结果和别的事务没提交前是一样的,查询结果不会变,这种现象叫做可以重复读
评论
有用 1脏读指的是读到了其他事务未提交的数据,未提交意味着这些数据可能会回滚,也就是可能最终不会存到数据库中,也就是不存在的数据。读到了并一定最终存在的数据,这就是脏读。
评论
有用 0回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
墨值悬赏

