# 不可重复读（Non-repeatable Read）

### 缩写：无

### 简述

同一事务内两次读同一行，因其他事务已提交修改而得到不同值。与脏读不同：读到的是已提交数据。

### 使用场景

中间校验再写回的业务、隔离级别选择、MVCC 快照讨论。

### 实践与应用

• 需要稳定快照时用可重复读/串行化或显式锁。
• 业务可接受「读到最新提交」时用读已提交。

### 注意事项

• 与幻读区分：不可重复读针对已有行的值变化。

### 对比与易混

| | 不可重复读 | 幻读 |
|--|------------|------|
| 焦点 | 已读行值变 | 集合变 |

### 关联术语

• 幻读：集合变化类异常
• 脏读：未提交读异常
• 隔离级别：控制手段
