刘艳兵-DBA033-如下那种应用场景符合Oracle ROWID存储规则?

如下那种应用场景符合Oracle ROWID存储规则?

A 物理ROWID是在同一个数据库中(DATABASE级)唯一标识一行的数据地址,且可转换输出文件号、块号、对象号等信息。

B 对堆表执行更新(UPDATE SQL)触发行迁移时,物理ROWID会变化。

C 使用ALTER TABLE ... MOVE命令移动堆表存储时ROWID发生变化,表中B-Tree索引状态变为不可用(UNUSABLE)。

D 用SQL查询ROWID时,索引组织表返回逻辑ROWID,堆表返回物理ROWID。

答:

A 物理ROWID是在同一个数据库中(DATABASE级)唯一标识一行的数据地址,且可转换输出文件号、块号、对象号等信息。

C 使用ALTER TABLE ... MOVE命令移动堆表存储时ROWID发生变化,表中B-Tree索引状态变为不可用(UNUSABLE)。

D 用SQL查询ROWID时,索引组织表返回逻辑ROWID,堆表返回物理ROWID。

选项分析

A选项- 物理ROWID确实是在数据库级别唯一标识一行的数据地址,并且它可以通过一定的方式转换输出文件号、块号、对象号等信息,这是符合Oracle ROWID存储规则的,所以A选项正确。

B选项- 当对堆表执行更新触发行迁移时,Oracle会使用一种称为"行迁移"的机制来处理,在这种情况下,原来的ROWID不会变化,只是会在新的位置留下一个指针指向原来的行,所以B选项不符合Oracle ROWID存储规则。

C选项- 当使用ALTER TABLE... MOVE命令移动堆表存储时,表的存储位置发生了改变,ROWID会发生变化,而且由于表的存储结构改变,基于原存储结构的B-Tree索引状态会变为不可用(UNUSABLE),这是符合Oracle ROWID存储规则的,所以C选项正确。

D选项- 在Oracle中,用SQL查询ROWID时,索引组织表返回逻辑ROWID,堆表返回物理ROWID,这是符合其存储规则的常见查询结果,所以D选项正确。

相关推荐
djjjx.2 分钟前
Linux进程篇(二):深入浅出 [进程概念与进程父子关系]:从底层原理到实战应用
linux·运维·服务器
爱喝水的鱼丶2 小时前
SAP-ABAP:S/4 HANA ABAP 新特性入门:与 ECC ABAP 的核心差异、架构优势与学习路径规划
运维·数据库·性能优化·sap·abap·hana·开发交流
鬼手点金8 小时前
nanoGPT/nanochat 能做出 DeepSeek/Qwen 这样的大模型吗?
服务器·前端·javascript·bug·openclaw
贵州诚鑫致达科技有限公司9 小时前
Linux的yum源怎么重启?源不是服务
linux·运维·服务器
程序员Sunday9 小时前
TypeScript 的 any、unknown、never 有什么区别?
前端·面试·typescript
余槐i9 小时前
PostgreSQL 函数索引报错 must be immutable:3种绕法与代价
数据库·后端·sql·postgresql·性能优化
数据库小学妹9 小时前
PostgreSQL表膨胀怎么办?autovacuum清不动的根因与排查命令
数据库·postgresql·表膨胀·mvcc·数据库运维
mister_guo9 小时前
MySQL-1267错误:排序规则冲突的原因与解决方案
数据库·mysql
小 黄 鸡10 小时前
HashMap 面试必会知识点详解(JDK 8)
java·面试·职场和发展
骇客野人10 小时前
在麒麟操作系统上 分别安装 jdk1.8, 达梦数据库,redis ,memcache 的操作实施方案和步骤
数据库·redis·memcached