chained rows analyze

itpremier發表於2010-10-16

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/,如需轉載,請註明出處,否則將追究法律責任。

相關文章