REPEATABLE READ隔离级别下DELETE操作属于不可重复读还是幻读?
该特定场景属于不可重复读还是幻读范畴?
我认为此问题并非重复提问,因为我未在任何地方见过该特定场景。
begin; begin; select * from bancos where id = 2; delete from bancos where id = 2; select * from bancos where id = 2; //same data, expected commit; select * from bancos where id = 2; //here he should have hidden it because it allows for phantom reads commit; select * from bancos where id = 2; // Eliminated, now yes
我正在使用REPEATABLE READ隔离级别,因此我原本认为该DELETE操作会引发幻读,因为MySQL的REPEATABLE READ允许幻读,所以我认为右侧控制台的倒数第二次SELECT查询(提交前的那次)不应返回该记录(即使未提交),因为这属于幻读场景,且REPEATABLE READ允许幻读
对于UPDATE场景我是理解的(UPDATE场景示例图)
但该DELETE场景该如何解释?难道DELETE引发的是不可重复读,因此在提交前都会显示该记录?
内容的提问来源于stack exchange,提问作者user19551894
相关产品推荐
相关产品推荐

