保姆级教程,终于搞懂脏读、幻读和不可重复读了!(8)

简介: 保姆级教程,终于搞懂脏读、幻读和不可重复读了!(8)

幻读演示步骤2


开启窗口 1 的事务,插入用户编号为 3 的数据,然后成功提交事务,执行 SQL 如下:


start transaction;
insert into userinfo(id,name,balance) values(3,'Spring',100);
commit;


以上 SQL 执行结果如下图所示:


微信图片_20220121002818.jpg


幻读演示步骤3


在窗口 2 中插入用户编号为 3 的数据,执行 SQL 如下:


insert into userinfo(id,name,balance) values(3,'Spring',100);


以上 SQL 执行结果如下图所示:


微信图片_20220121002852.jpg


添加用户数据失败,提示表中已经存在了编号为 3 的数据,且此字段为主键,不能添加多个。


幻读演示步骤4


在窗口 2 中,重新执行查询:


select * from userinfo where id=3;


以上 SQL 执行结果如下图所示:


微信图片_20220121002943.jpg


/ 在此事务中查询明明没有编号为 3 的用户,但插入的时候却却提示已经存在了,这就是幻读。


不可重复读和幻读的区别


二者描述的则重点不同,不可重复读描述的侧重点是修改操作,而幻读描述的侧重点是添加和删除操作。

目录
打赏
0
0
0
0
1170
分享
相关文章
|
3月前
|
脏读、幻读、不可重复读的定义?
脏读、不可重复读和幻读是数据库事务处理中的三种异常现象。脏读指读取未提交的修改数据;不可重复读指同一事务中多次读取数据不一致;幻读指读取记录范围时,前后读取结果数量不一致。这些现象通常由并发事务操作引起。
103 7
如何避免脏读
【10月更文挑战第17天】如何避免脏读
分布式事物【 认识事物、脏写、脏读、不可重复读、幻读】(一)-全面详解(学习总结---从入门到深化)
分布式事物【 认识事物、脏写、脏读、不可重复读、幻读】(一)-全面详解(学习总结---从入门到深化)
220 1
分布式事物【 认识事物、脏写、脏读、不可重复读、幻读】(一)-全面详解(学习总结---从入门到深化)
数据库系列课程(14)-脏读、不可重复读、幻读
数据库系列课程(14)-脏读、不可重复读、幻读
66 0
数据库事务的并发问题 (脏读、幻读、不可重复读)
数据库事务的并发问题 (脏读、幻读、不可重复读)
162 0
图解脏读、幻读、不可重复读
图解脏读、幻读、不可重复读
97 0
先了解清楚 脏读、不可重复读、幻读,再谈事务隔离机制
先了解清楚 脏读、不可重复读、幻读,再谈事务隔离机制
183 0
先了解清楚 脏读、不可重复读、幻读,再谈事务隔离机制
幻读是啥,会有什么问题?如何解决?
大家好,我是Leo,上篇文章大概介绍了为什么查询一条记录性能慢的原因。今天我们介绍一下幻读的一些相关知识,以及幻读相关的间隙锁,间隙锁死锁的解决方案。
幻读是啥,会有什么问题?如何解决?
保姆级教程,终于搞懂脏读、幻读和不可重复读了!(7)
保姆级教程,终于搞懂脏读、幻读和不可重复读了!(7)
174 0
保姆级教程,终于搞懂脏读、幻读和不可重复读了!(7)

热门文章

最新文章