Gap Lock
间隙锁是在索引两端的间隙加锁,比如update num = 3的索引记录,num = 3的记录前后分别是num = 1, num = 4, 那么间隙锁是在(1, 3], 和 [3, 4)之间加锁, 所以加入要insert一个num = 2的数据就不行,如果要inset num = 5的数据就可以
由于主键(聚集)索引或者唯一索引都有唯一性,所以对当前查询语句的查询条件做等值判断,在加排他锁的时候,加的不是间隙锁
如果普通索引,或者主键/唯一索引做范围查询,加的排他锁是间隙锁
主键/唯一索引在做等值查询或者范围查询,查不到内容的时候,会加上间隙锁