正确地理解,非锁定选择不会创建锁,也不会创建任何间隙锁。 这个例子是错误的,或者充其量是不清楚的。 锁定选择包括 LOCK IN SHARE MODE (创建s锁)或 FOR UPDATE (创建x锁)。因为有两个可能的锁子句,也许作者打算写一些东西,说其中任何一个都会导致间隙锁,但后来他们忘了写那个。 在关于间隙锁的部分的开头,文本确实使用了一个示例语句 SELECT c1 FROM t WHERE c1 BETWEEN 10 and 20 FOR UPDATE; 更清楚地说,这是一个锁定选择的例子。
1条答案
按热度按时间kuuvgm7e1#
正确地理解,非锁定选择不会创建锁,也不会创建任何间隙锁。
这个例子是错误的,或者充其量是不清楚的。
锁定选择包括
LOCK IN SHARE MODE
(创建s锁)或FOR UPDATE
(创建x锁)。因为有两个可能的锁子句,也许作者打算写一些东西,说其中任何一个都会导致间隙锁,但后来他们忘了写那个。在关于间隙锁的部分的开头,文本确实使用了一个示例语句
SELECT c1 FROM t WHERE c1 BETWEEN 10 and 20 FOR UPDATE;
更清楚地说,这是一个锁定选择的例子。