【MYSQL】事务隔离级别

脏读、幻读、不可重复读

脏读

一个事务正在对一条记录做修改,在这个事务完成并提交前,另一个事务也来读取同一条记录,读取了这些未提交的"脏"数据,并据此做进一步的处理,就会产生未提交的数据依赖关系。这种现象被形象的叫作'脏读'(Dirty Reads)。

例子:事务A修改了一条数据1状态为CLOSED,还没有提交,事务B来读数据1,获取到了数据1的状态为CLOSED

不可重复读

一个事务在读取某些数据后的某个时间,再次读取以前读过的数据,却发现其读出的数据已经发生了改变、或某些记录已经被删除了!这种现象就叫作" 不可重复读"(Non-Repeatable Reads)。

例子:事务A读取一条数据1状态为OPEN,事务B来修改数据1状态为CLOSED,事务A再次读取数据1状态变为CLOSED

幻读

一个事务按相同的查询条件重新读取以前检索过的数据,却发现其他事务插入了满足其查询条件的新数据,这种现象就称为"幻读"(Phantom Reads)。

例子:事务A根据时间20231212条件筛选查询数据有3条,事务B插入了时间为20231212的一条数据,事务A再次查询发现数据变为了4条,仿佛出现幻读

相关推荐
wuxuanok几秒前
SQL理解——INNER JOIN
数据库·sql
天天讯通7 分钟前
机器人系统对接线索平台好处
大数据·数据库·人工智能·机器人·语音识别
用户20187928316711 分钟前
Java序列化之幽灵船“Serial号”与永生契约
android·java
用户20187928316713 分钟前
“对象永生”的奇幻故事
android·java
周某某~16 分钟前
Rabbit MQ的消息模式-Java原生代码
java·分布式·rabbitmq
天天摸鱼的java工程师22 分钟前
如何实现一个分布式锁?——来自 Java 老兵的实战总结 🚀🔐
java·后端·面试
LZQqqqqo24 分钟前
C# XML 文件
xml·java·c#
__風__1 小时前
从本地 Docker 部署的 Dify 中导出知识库内容(1.6版本亲测有效)
人工智能·python·mysql·语言模型
运维小杨1 小时前
Redis主从复制搭建
数据库·redis·缓存
big_eleven1 小时前
JVM入门基础
java·后端·面试