读锁
select ... lock in share mode;
添加一个共享锁,确保可以读到最新的数据,阻塞其他事务对该数据的更新;可以兼容其他的共享锁;两个select ... lock in share mode可以互相兼容。
select ... for update;
添加一个排他锁,阻塞其他更新事务;同时也会阻塞其他排他锁;两个select ... for update无法兼容。
读锁
select ... lock in share mode;
添加一个共享锁,确保可以读到最新的数据,阻塞其他事务对该数据的更新;可以兼容其他的共享锁;两个select ... lock in share mode可以互相兼容。
select ... for update;
添加一个排他锁,阻塞其他更新事务;同时也会阻塞其他排他锁;两个select ... for update无法兼容。