chained rows analyze

本文介绍如何使用Oracle的analyze命令生成表内的链接行列表,并将其存储在CHAINED_ROWS表中。通过运行特定脚本和使用analyze命令的listchainedrowsinto子句实现这一过程。此外,还提供了一个示例查询,展示如何基于Head_RowID值从表中选择链接行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

45.17.1 CHAINED_ROWS

analyze 命令用于生成表内链接的或迁移的行的列表。该链接行的列表可以存储在CHAINED_ROWS 表内。要在用户模式中创建CHAINED_ROWS 表,需要运行utlchain.sql脚本(通常可在Oracle 主目录下的/rdbms/admin 子目录中找到)。

要填充CHAINED_ROWS 表,需要使用analyze 命令的list chained rows into 子句,如下面的程序清单所示:

analyze TABLE BIRTHDAY list chained rows into CHAINED_ROWS;

CHAINED_ROWS 表列出了Owner_Name、Table_Name、Cluster_Name(如果该表在群集中)、Partition_Name(如果表被分区)、Subpartition_Name(如果表包含子分区)、Head_RowID(该行的ROWID)和Analyze_TimeStamp 列(该列显示最后一次分析表或群集的时间)。可以在CHAINED_ROWS 表中查询基于Head_RowID 值的表,如下例所示:

  1. Select * from BIRTHDAY
  2. where RowID in
  3. (select Head_RowID
  4. from CHAINED_ROWS
  5. where Table_Name = 'BIRTHDAY');
如果链接的行长度很短,那么可以通过删除和重新插入行的操作来消除该链接。[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/350519/viewspace-1039831/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/350519/viewspace-1039831/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值