網絡上大部分的文章都是這么說的:RR下面是不會發生幻讀的。
經過一番查證,我想說這個結果是錯誤的。
下面我來舉證說明:
-- auto-generated definition create table test ( c1 int auto_increment primary key, c2 varchar(10) default '' not null, c3 varchar(10) default '' not null ); INSERT INTO cread.test (c1, c2, c3) VALUES (1, '2', '3');
然后我們開啟2個事物,執行我們的SQL
這里奇怪的出現了 1行數據被影響了。
在事務2里,c2字段兩次查詢出現不同的結果。也就是幻讀。