OceanBase 中哪些操作会加表锁?(多选) A. DML 语句 B. DDL 语句 C. SELECT ... FOR UPDATE D. 普通 SELECT 只读查询

OceanBase 中哪些操作会加表锁?(多选)
A. DML 语句
B. DDL 语句
C. SELECT … FOR UPDATE
D. 普通 SELECT 只读查询

正确选项:B、C 。

  • A 不选 :DML 的 INSERT/UPDATE/DELETE 主要加的是行锁 TR ,同时在分区/表级别会产生分区级表锁 TM ,但它不是典型意义上的“表锁”操作。
  • B 选 :DDL 语句,尤其是 Offline DDL,会触发表级表锁 TM,用于保护表元数据和数据分片。
  • C 选 :SELECT … FOR UPDATE 会对命中的行加排他锁,属于显式加锁操作。
  • D 不选 :普通 SELECT 是快照读,不加锁。