同一个事务下读锁和写锁可以共存吗老师(补充)
来源:1-2 面试准备
Panda_io
2021-05-23
老师我上一个问题表达不充分,我重新写下
Start TRANSACTION; // 首先开启事务 单行执行
SELECT * FROM account_innodb lock in share mode; // 加上读锁 单行执行
update account_innodb set balance = 1000 // 数据已经被加上了读锁,但是这里能加写锁成功 单行执行
问题:理论上读锁和写锁是不可以共存的,同一个session下(我没有执行commit也就是没提交事务,所以加读锁和写锁都在同一个事务里)我居然可以对数据先加读锁再加写锁,就很疑惑,请老师解答一下。
写回答
1回答
-
翔仔
2021-05-24
同学好,我前面的问题看太快理解错了,当前事务加共享读锁的话,其它事务只能再加共享锁,本事务是可以用写锁的。
00
相似问题