Mysql版本8.0.36
共享锁和排他锁概念
共享锁:也称为读锁,一个事物加了共享锁,其它线程也可以加共享锁,但是不可以加排他锁
排他锁:通常update、delete和insert自带排他锁,给查询语句加排他锁需要在语句末尾加上for update。 也称为独占锁,即一个事物对数据加了排他锁,其他事务就只能阻塞等待。
疑问:排他锁是否会阻塞本事务的共享锁和排他锁?
我在通义千问中文AI,排他锁愈合其他事务包括自己事务的共享锁兼容。
原话是:这是因为共享锁会阻止任何事务(包括加锁事务自身)获取同一数据的排他锁,而更新操作需要排他锁来保证数据的独占访问权。
我理解的是它说同一个事务里读锁和写锁不兼容。
但是我自己测试,同一个事务里读锁和写锁是兼容的。不知道是不是版本的原因。
有懂哥知道是怎么回事吗? 还是通义千问回答错误了