1.排他锁示范:
排他锁:x锁,加完排他锁,事务不释放或者不提交,其他事务无法进行对应数据的操作(其他事务无法拿到对应的排他锁)
-- 新建一个连接
select @@autocommit;
set @@autocommit=0; -- 设置为手动事务提交;默认为1,自动提交事务
start transaction
select * from sr_main where PK_SR_MAIN = '1265185686872899584' lock in share mode;
commit ;-- commit,ROLLBACK释放锁
-- 新建第二个连接
select @@autocommit;
set @@autocommit=0;
start transaction
select * from sr_main where PK_SR_MAIN = '1265185686872899584' for UPDATE; -- 执行不成功;for UPDATE可以成功
update sr_main set mhz = 'tcc2' where PK_SR_MAIN = '1265185686872899584';
commit
第一个连接执行 commit ;-- commit,ROLLBACK释放锁
第二个连接的update/select操作才能执行