我使用mySQL InnoDB表。 使用php脚本进行Mysql数据库查询。 当用户选择特定表中的记录时,我想锁定它并仅允许其他用户的读取过程。 所以我尝试使用
SELECT * FROM parent WHERE NAME = 'Jones' LOCK IN SHARE MODE;
所以我的问题是当用户B尝试选择相同的记录时如何知道记录被锁定以及用户A何时尝试更新记录如何授权此操作。
感谢您的帮助
答案 0 :(得分:2)
InnoDB行锁仅用于在事务期间临时使用(例如,当您想暂时阻止其他任何试图查看或修改行的人时)。如果要允许应用程序的用户“锁定”记录,则行锁定不适用于此目的。相反,在应用程序级别执行此操作:在表格中创建一个列,以表示您的哪些用户已锁定记录。