分区表上的索引分为:本地(局部)索引(local index) 和 全局索引(global index)
1、本地索引
(1)普通索引
SQL > CREATE INDEX INDEX_NAME ON TABLE (COLUMN)
local
(
partition part_idx_01 tablespace index_space01,
partition part_idx_02 tablespace index_space02,
partition part_idx_03 tablespace index_space03
)
(2)唯一索引 如:主键
SQL > CREATE UNIQUE INDEX INDEX_NAME ON TABLE (COLUMN)
local
(
partition part_idx_01 tablespace index_space01,
partition part_idx_02 tablespace index_space02,
partition part_idx_03 tablespace index_space03
)
注:主键索引和主键约束的创建与删除顺序
创建主键索引 --> 创建主键约束
删除主键约束 --> 删除主键索引
(3)非表分区字段唯一索引 表分区字段:USRID
SQL > CREATE UNIQUE INDEX INDEX_NAME ON TABLE (COLUMN,USRID)
local
(
partition part_idx_01 tablespace index_space01,
partition part_idx_02 tablespace index_space02,
partition part_idx_03 tablespace index_space03
)
2、全局索引
(1)范围索引
SQL > CREATE [UNIQUE] INDEX INDEX_NAME ON TABLE(COLUMN)
global partition by range(column)
(
partition part_idx_01 value less than(first range value) tablespace index_space01,
partition part_idx_02 value less than(second range value) tablespace index_space02,
partition part_idx_03 value less than(maxvalue) tablespace index_space03
)
(2)散列索引
SQL > CREATE [UNIQUE] INDEX INDEX_NAME ON TABLE(COLUMN,[COLUMN2])
global partition by hash(column,[column2])
(
partition part_idx_01 tablespace index_space01,
partition part_idx_02 tablespace index_space02,
partition part_idx_03 tablespace index_space03
)
注:
1.分区字段不是主键的情况下,只可以创建全局分区索引,不可以创建本地主键分区索引.
只有分区字段为主键时才可以创建本地主键分区索引.
2.如果创建本地唯一分区索引,除指定索引字段外还要加上表分区字段.
这种索引意义不大:因为这样构成复合索引,索引改变,约束也改变了.
3.如果创建非唯一索引则不需要表分区字段.
4.创建全局分区索引后可以创建约束.
DBA查看索引分区
select * from dba_ind_partitions
USER查看索引分区
select * from user_ind_partitions
DBA查看索引分区类型
select * from dba_part_indexes
USER查看索引分区类型
select * from user_part_indexes
(文章来自网络,如有侵权请来信告知,本站将在第一时间删除。)
总机:(010)-88589926,88589826,88587026 QQ讨论群:243729577 182441349 邮箱:cuug_bj@cuug.com
通信地址:北京市海淀区紫竹院路98号北京化工大学科技园609室(CUUG)邮政编码:100089
中国UNIX用户协会 Copyright 2010 ALL Rights Reserved 北京神脑资讯技术有限公司
京ICP备11008061号 京公网安备110108006275号