在可重复读隔离级别下,5个线程并发执行 update b = b + 1 where b = 5,最后b的值是多少?
考察说明
考察数据库并发控制与可重复读隔离级别的行为理解
回答思路
- 理解可重复读隔离级别下普通SELECT的一致性快照,但UPDATE操作使用当前读(加锁读)
- 分析UPDATE操作会锁定行并读取最新已提交数据,而非快照
- 推导各线程按顺序加锁执行,每次更新基于前一结果,最终值应为10
- 区分快照读与当前读,以及可重复读与串行化的差异
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。