脏读:事务A读取了事务B未提交的事务
事务B修改数据后,并没有提交,这个时候事务A就查到了修改后的数据,这就是脏读。

不可重复读:事务A多次读取同一份数据,发现结果不一样。这是因为在两次读取的间隔中,事务B提交了update操作。

update 和delete会造成不可重复读的现象。
幻读:事务A进行了一个查询语句,发现只有一条数据,当事务B进行insert操作并提交后,事务A再次查询,发现多了一条数据。即为幻读。

事务并发带来的三大问题,无论是脏读,不可重复读,还是幻读,它们都是数据库的读一致性的问题,都是在一个事务里面前后两次读取出现了不一致的情况.
不可重复读主要是由于upate和delete 操作引发的,幻读主要是由于insert操作引发的。
本文探讨了数据库并发控制中的三大问题:脏读现象如何由未提交的事务引起,不可重复读由update和delete操作导致的不一致性,以及幻读如何因insert操作导致查询结果变化。这些问题是读一致性挑战,主要关注事务中的前后读取差异。
1299

被折叠的 条评论
为什么被折叠?



