我已阅读mysql文档,也许我只是不明白这一切。我正在寻找的是行锁从阅读其他会议。当行被锁定时,我想让其他会话到等待,直到锁定被释放。我不希望其他会话从快照中读取!他们必须等到发布完成!Mysql InnoDB从读取行锁定
我想得到的是完全相同的,如以下示例但不是整个表锁单列:
START TRANSACTION
LOCK TABLES table1 WRITE
SELECT * FROM table1 WHERE id = 40912
UPDATE table1 SET column1 = 'value1' WHERE id = 40912
UNLOCK TABLES
COMMIT
预先感谢您!
嗨!谢谢你的回答,但它似乎不工作......另一个会话(select)仍然返回快照中的值! –
谢谢埃琳娜,它的工作原理! –