2

在手册中它说 InnoDB 具有行级锁定,那么为什么如果我选择一些带有FOR UPDATE语句的行它不会让我在该表中插入新行呢?毕竟新行不应该被锁定,它没有被选中。

4

1 回答 1

2

在 InnoDB 中,对自动增量列的插入会导致表锁定。选择行 FOR UPDATE 会导致行级锁定。

由于如果存在行锁则无法获取表锁,因此 UPDATE 会阻止 INSERT 直到其事务被提交。

于 2009-07-09T13:09:19.680 回答