刘艳兵-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选项正确。

相关推荐
加勒比之杰克37 分钟前
【操作系统原理】Linux 进程控制
linux·运维·服务器·进程控制
TDengine (老段)38 分钟前
TDengine 字符串函数 TO_BASE64 用户手册
android·大数据·服务器·物联网·时序数据库·tdengine·涛思数据
不知更鸟5 小时前
Django 项目是什么
数据库·sqlite
有一个好名字8 小时前
MyBatis-Plus 三种数据库操作方式详解 + 常用方法大全
数据库·mybatis
-Xie-8 小时前
Redis(八)——多线程与单线程
java·数据库·redis
wanhengidc8 小时前
云手机的软件核心是什么
运维·服务器·web安全·游戏·智能手机
G探险者8 小时前
为什么 VARCHAR(1000) 存不了 1000 个汉字? —— 详解主流数据库“字段长度”的底层差异
数据库·后端·mysql
芬加达8 小时前
jvm八股
运维·服务器·jvm
小兔薯了9 小时前
11. Linux firewall 防火墙管理
linux·运维·服务器
Albert Tan9 小时前
Oracle EBS R12.2.14 清理FND_LOBS并释放磁盘空间
数据库·oracle