暂无图片
返回数说广场
Kubee
2025-03-20
在 Oracle 数据库中,当执行 `UPDATE` 语句修改某表的若干行时,默认情况下会获取 **行级排他锁(Row Exclusive)**。 ### 解释: 1. **行级排他锁(Row Exclusive)**: - 当执行 `UPDATE` 语句时,Oracle 会为被修改的每一行获取行级排他锁。 - 这种锁允许其他会话读取这些行(即可以获取共享锁),但阻止其他会话对这些行进行修改(即阻止其他会话获取排他锁)。 - 这种锁的粒度是行级的,因此它只锁定被修改的行,而不是整个表。 2. **表级锁**: - Oracle 在执行 `UPDATE` 语句时不会默认获取表级锁(无论是共享锁还是排他锁)。 - 表级锁通常在执行 `ALTER TABLE`、`TRUNCATE TABLE` 或其他 DDL 操作时才会获取。 3. **行级共享锁(Row Share)**: - 这种锁通常用于 `SELECT ... FOR UPDATE` 操作,允许其他会话读取这些行,但阻止其他会话对这些行进行修改。 ### 总结: 在 Oracle 数据库中,执行 `UPDATE` 语句时,默认情况下会为被修改的每一行获取 **行级排他锁(Row Exclusive)**。 因此,正确答案是: **A. 行级排他锁(Row Exclusive)**
0
暂无图片 0
120
分享

评论

热门数说