1、在mysql中的test数据库中建立一个表shoufei:CREATETABLE`衡痕贤伎shoufei`(`id`int(11)NOTNULL帆歌达缒AUTO_INCREMENT,`shijian`timestampNOTNULLDEFAULTCURRENT_TIMESTAMP,`xiangmu`varchar(20)NOTNULL,`jiage`floatNOTNULL,`shuliang`int(11)NOTNULL,`jine`floatDEFAULTNULL,PRIMARYKEY(`id`))ENGINE=InnoDBAUTO_INCREMENT=11DEFAULTCHARSET=utf8
2、用2个用户登录mysql(abc_1,abc_2),演示对记录的共享锁。
3、abc_1用户对表id为1的记录加共享锁(不让abc_2用户修改):SET autocommit=0;START TRANSACTION;SELECT * FROM shoufei WHERE id=1 LOCK IN SHARE MODE ;
4、abc_2用户对id=1的修改,命令等待……会出现超时:SET autocommit=0;START TRANSACTION;UPDATE shoufei SET jiage=10 WHERE id=1;
5、abc_1用户提交事务,会记录解锁:commit;
6、ab_1用户对记录解锁话,abc_2用户对id=1的记录修改成功。SET autocommit=0;START TRANSACTION;UPDATE shoufei SET jiage=10 WHERE id=1;COMMIT;
7、abc_2查询表中的数据:select * from shoufei;