当前所在位置:珠峰网资料 >> 计算机 >> Oracle认证 >> 正文
oracle综合:Oracle全文索引的STORAGE属性(一)
发布时间:2010/11/17 9:41:02 来源:www.xue.net 编辑:城市总裁吧
   这篇文章介绍Oracle全文索引的STORAGE属性。

  Oracle全文索引的STORAGE属性是为了给全文索引生成的辅助表设置存储参数的。

  Oracle的全文索引会生成一张或多张辅助表,由于这些表是Oracle自动生成的,用户没有办法直接设置这些表和索引的物理参数,因此Oracle提供了STORAGE属性,专门设置这些辅助表和索引的物理参数。

  SQL SELECT * FROM TAB;

  TNAME TABTYPE CLUSTERID------------------------------ ------- ----------DR$IND_T_DOCS$I TABLEDR$IND_T_DOCS$K TABLEDR$IND_T_DOCS$N TABLEDR$IND_T_DOCS$P TABLEDR$IND_T_DOCS$R TABLET TABLE

  已选择6行。

  上面的五张表都是全文索引生成的。CONTEXT索引生成表的规则是DR$+索引名+$+表用途标识。

  DR$IND_T_DOCS$I存储的是索引数据表(Index data table);

  DR$IND_T_DOCS$K存储的是键值映射表(Keymap table);

  DR$IND_T_DOCS$R是ROWID表(Rowid table);

  DR$IND_T_DOCS$N是负键值链表(Negative list table);

  DR$IND_T_DOCS$P这个表只有在CONTEXT索引中设置BASIC_WORDLIST的SUBSTRING_INDEX属性后才会生成,用来保存单词的部分内容。

  DR$IND_T_DOCS$X这个索引是DR$IND_T_DOCS$I表的索引。

  SQL SELECT TABLE_NAME, INDEX_NAME FROM USER_INDEXES WHERE INDEX_NAME LIKE 'DR%';

  TABLE_NAME INDEX_NAME------------------------------ ------------------------------DR$IND_T_DOCS$I DR$IND_T_DOCS$X

  如果不进行设置,那么Oracle会将这些对象存放到默认表空间中,并根据默认表空间的存储参数设置这些对象的存储参数。

  1 SQL SELECT

  2 TABLE_NAME NAME,

  3 DECODE

  4 (

  5 IOT_TYPE,

  6 'IOT',

  7 (

  8 SELECT TABLESPACE_NAME

  9 FROM USER_INDEXES

  10 WHERE TABLE_NAME = A.TABLE_NAME

  11 AND INDEX_TYPE = 'IOT - TOP'

  12 ),

  13 TABLESPACE_NAME

  14 ) TABLESPACE_NAME

  15 FROM USER_TABLES A

  16 WHERE TABLE_NAME LIKE 'DR%'

  17 UNION ALL

  18 SELECT INDEX_NAME NAME, TABLESPACE_NAME

  19 FROM USER_INDEXES

  20 WHERE INDEX_NAME LIKE 'DR%';

广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved