如果没有这个标识, 还要推开厕所门才能知道厕所里有没有人
5.Gap Locks, 间隙锁
LOCK_MODE分别是: S,GAP或X,GAP
索引记录之间间隙上的锁, 锁定尚未存在的记录, 即索引记录之间的间隙...例如, SELECT c1 FROM t WHERE c1 BETWEEN 1 AND 6 FOR UPDATE; 锁会阻止其他事务将值2插入 c1的索引记录中,因为该范围内所有现有值之间的间隙都已锁定...一个事务采用的间隙锁不会阻止另一个事务在同一间隙上采用间隙锁. 既然都是为了阻止数据插入, 间隙锁之间冲突就失去了意义. 共享和独占间隙锁之间没有区别. 它们彼此不冲突, 并且执行相同的功能。..."supremum"伪记录, 另一边锁住最大值上方的间隙, 对于最后一个间隔,next-key lock 锁定索引中最大值上方的间隙,并且“ supremum ” 伪记录的值高于索引中的任何实际值。...= 514
因为间隙锁锁住的是索引记录中的空隙, 间隙并没有确切的前后区间, innodb将新值插入索引记录时, 需要维护对应字段的索引记录, 即需要获取到对应的插入意向锁, 新值并不处于会话1的GAP