for update 与lock in share mode的区别

for update与lock in share mode是应用于并发情况下对数据进行加锁操作,分别用数据 事物A(先) 和 事物B(后) 来描述并发操作

相同点:1.两者都会对并发的操作造成阻塞,等待A操作完成;

    2.查询操作不会造成阻塞(不带for update)

    3.操作阻塞(带for update)

 

不同点:并发时for update会使B一直阻塞,等待A操作完成后执行B操作;

    而在使用lock in share mode下当B阻塞时,如果A继续有修改数据,那么此时B会终止失败
    

  lock in share mode意向共享锁(IS)

  for update意向排它锁(IX)

你可能感兴趣的:(for update 与lock in share mode的区别)