使用 PHP 的 mysqli 如何应用行级锁?
行级锁会阻止任何人编辑当前存在的符合您条件的行,对吗?但是他们会阻止用户插入符合您条件的行吗?
Thanks
如果您想锁定特定行以防止编辑,请使用FOR UPDATE
在 SELECT 查询的末尾。这会锁定事务中的行并阻止其他用户更新它。这只适用于像 innodb 这样的事务存储引擎。
回答您的问题,是的,行级锁“阻止任何人编辑当前存在的符合您条件的行”。更具体地说,如果(在事务内)您插入、更新或删除一行,则该行将被锁定,无法被其他任何人编辑,直到您提交事务为止。如果您使用 SELECT 一行FOR UPDATE
那么这也锁定了该行。
但是,这不会“阻止用户插入符合您条件的行”。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)