修改方 查询方
session A B
autocommit off off
isolation not care REPEATABLE-READ 为边界
执行顺序:
右侧开启第一次会话
右侧第一次select
左侧insert
右侧第二次select(这里显示没有脏读)
左侧commit
右侧第三次select(这里显示没有幻读)
右侧commit,关闭第一次会话
右侧开启第二次会话
右侧第四次select(这里显示在第二次会话时才会出现insert的内容,第一次会话中的查询,无论A是否commit,都不影响B的结果
主要参考:MySQL隔离级别
CREATE TABLE `tao` (
`col1` tinyint(3) unsigned NOT NULL DEFAULT '0',
`col2` varchar(20) DEFAULT NULL,
PRIMARY KEY (`col1`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;