我好像理解了,是第一种,幻读需要在同一个事务中,所以开一个C事务是错误的。同时,关于InnoDB存储引擎里可重复读隔离解决幻读,A 事务开始Select查询到一条数据,B 事务开始Insert一条数据,此时A事务进行了Update更新事务,会将B事务里的版本修改(此时B事务是已经结束的),所以此时A事务Select出现幻读。但是举例是A 事务开始Select查询到一条数据,A事务进行了Update更新事务,B 事务开始Insert一条数据,此时B事务将会等待,原因是数据行附近被锁住了,A再次Select查询出现一条数据,A事务结束,B事务开始Insert。查询出现两条数据。
点赞 评论

相关推荐

牛客网
牛客网在线编程
牛客网题解
牛客企业服务