本地分区索引如何确定表空间

文章作者 100test 发表时间 2007:05:07 16:28:26
来源 100Test.Com百考试题网


  表和索引建立的时候如果不指定表空间,会建立在用户的默认表空间中。对于分区表和分区索引,则确定建立的表空间的规则要复杂一些,本文进行简单的总结
  
  分区表的分区增加分区如果不指定表空间,会根据分区表的默认表空间,如果分区表没有指定默认表空间,则建立在用户的默认表空间上。参考例一。
  
  复合分区表增加子分区如果不指定表空间,会根据分区上的默认表空间,如果分区上没有指定,则根据表上面的默认表空间,如果表上也没有指定,则建立在用户的默认表空间上。参考例二。
  
  分区索引的情况比分区还要复杂一些。由于本地索引会随着增加分区的操作自动增加,因此,无法明确的为这个索引指定表空间。如果在建立分区索引时,给出了默认表空间,那么新增的索引分区所在表空间和新增表分区所在表空间保持一致。参考例三。
  
  复合分区索引的情况和分区索引类似。当复合分区表增加子分区时,如果复合分区索引给出了分区默认表空间,则新建的索引子分区建立在索引分区默认表空间上,如果分区一级没有明确致命默认表空间,则依据索引一级的默认表空间创建新子分区,如果索引一级仍然没有设置明确设置表空间,则索引子分区的表空间和表中子分区的表空间保持一致。参考例四。
  
  例一:分区表增加分区
  
  SQL> SELECT DEFAULT_TABLESPACE FROM USER_USERS.
  
  DEFAULT_TABLESPACE
  ------------------------------
  YANGTK
  
  
  SQL> CREATE TABLE TEST (ID NUMBER)
   2 TABLESPACE USERS
   3 PARTITION BY RANGE (ID)
   4 (
   5  PARTITION P1 VALUES LESS THAN (100)
   6  TABLESPACE TEST
   7 ).
  
  表已创建。
  
  SQL> CREATE TABLE TEST1 (ID NUMBER)
   2 PARTITION BY RANGE (ID)
   3 (
   4  PARTITION P1 VALUES LESS THAN (100)
   5  TABLESPACE TEST
   6 ).
  
  表已创建。
  
  SQL> ALTER TABLE TEST ADD PARTITION P2 VALUES LESS THAN (200).
  
  表已更改。
  
  SQL> ALTER TABLE TEST1 ADD PARTITION P2 VALUES LESS THAN (200).
  
  表已更改。
  
  SQL> SELECT TABLE_NAME, TABLESPACE_NAME FROM USER_TAB_PARTITIONS
   2 WHERE PARTITION_NAME = P2.
  
  TABLE_NAME           TABLESPACE_NAME
  ------------------------------ ------------------------------
  TEST              USERS
  TEST1             YANGTK
  
  SQL> DROP TABLE TEST.
  
  表已丢弃。
  
  SQL> DROP TABLE TEST1.
  
  表已丢弃。

相关文章


毕业生来河南就业外地人士无须审批
分析SQLServer的内存为何不断增加
如何进行SQLServer批理修改权限
如何读取Excel数据并导入DB2数据库
本地分区索引如何确定表空间
Oracle数据库设计阶段性能优化策略
河南行政管理(本科)考试计划已调整
Weblogic8配置Oracle数据库连接池
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛