首页 > 其他分享 >什么是脏读,不可重复读,幻读

什么是脏读,不可重复读,幻读

时间:2023-01-29 21:46:15浏览次数:51  
标签:事务 读取 幻读 重复 脏读 数据

知乎引用,仅作学习记录

脏读

1、在事务A执行过程中,事务A对数据资源进行了修改,事务B读取了事务A修改后的数据。

2、由于某些原因,事务A并没有完成提交,发生了RollBack操作,则事务B读取的数据就是脏数据。

这种读取到另一个事务未提交的数据的现象就是脏读(Dirty Read)。

 


不可重复读(注重 修改的数据

事务B读取了两次数据资源,在这两次读取的过程中事务A修改了数据,导致事务B在这两次读取出来的数据不一致。

这种在同一个事务中,前后两次读取的数据不一致的现象就是不可重复读(Nonrepeatable Read)。

 

幻读(属于不可重复读的一种情况  注重新增数据 第二次查出来数据量多了)

事务B前后两次读取同一个范围的数据,在事务B两次读取的过程中事务A新增了数据,导致事务B后一次读取到前一次查询没有看到的行。

幻读和不可重复读有些类似,但是幻读强调的是集合的增减,而不是单条数据的更新。

 

标签:事务,读取,幻读,重复,脏读,数据
From: https://www.cnblogs.com/developS/p/17073895.html

相关文章