内容目录
以下是关于当前读、快照读、脏读、幻读和不可重复读的简要概述:
读取类型 | 定义/描述 |
---|---|
当前读 | 当前读直接读取最新的数据行,包括其他事务修改但未提交的数据,所以可能会引起脏读、幻读和不可重复读问题。这种读取通常在 UPDATE ,DELETE 和 INSERT 语句中出现。 |
快照读 | 快照读总是读取事务开始时的数据快照,即使在这个事务处理期间,其他事务可能已经更改了这些数据。这种读取通常在 SELECT 语句中出现,可以避免脏读和不可重复读,但可能出现幻读。 |
脏读 | "脏读"是指一个事务读取了另一个未提交事务的数据。这可能会导致不一致的查询结果,如果其他事务回滚,那么之前读取的数据就是无效的。 |
幻读 | "幻读"是指在一个事务处理过程中多次查询的结果集不一致。这通常是因为其他并发事务在此期间插入或删除了记录。 |
不可重复读 | "不可重复读"是指在同一个事务中,多次读取同一数据的结果不一致。这通常是因为其他并发事务在此期间更新了数据。 |