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

相关推荐
Lee川2 小时前
优雅进化的JavaScript:从ES6+新特性看现代前端开发范式
javascript·面试
倔强的石头_2 小时前
kingbase备份与恢复实战(二)—— sys_dump库级逻辑备份与恢复(Windows详细步骤)
数据库
Lee川5 小时前
从异步迷雾到优雅流程:JavaScript异步编程与内存管理的现代化之旅
javascript·面试
晴殇i7 小时前
揭秘JavaScript中那些“不冒泡”的DOM事件
前端·javascript·面试
绝无仅有8 小时前
Redis过期删除与内存淘汰策略详解
后端·面试·架构
绝无仅有8 小时前
Redis大Key问题排查与解决方案全解析
后端·面试·架构
AAA梅狸猫9 小时前
Looper.loop() 循环机制
面试
AAA梅狸猫9 小时前
Handler基本概念
面试
Wect9 小时前
浏览器缓存机制
前端·面试·浏览器
掘金安东尼10 小时前
Fun with TypeScript Generics:玩转 TS 泛型
前端·javascript·面试