FOR UPDATE 加锁

select...for update加锁的情况:

  • 主键字段:加行锁。
  • 唯一索引字段:加行锁。
  • 普通索引字段:加行锁。
  • 主键范围:加多个行锁。
  • 普通字段:加表锁。
  • 查询空数据:不加锁。

举例:

  • 如果事务1加了行锁,一直没有释放锁,事务2操作相同行的数据时,会一直等待直到超时。
  • 如果事务1加了表锁,一直没有释放锁,事务2不管操作的是哪一行数据,都会一直等待直到超时。
posted @ 2025-02-06 15:02  xunm  阅读(23)  评论(0)    收藏  举报