分区表学习之二

-----------创建HASH分区表
create table t_partition_hash (
  BAZ001 NUMBER(16),
  BAZ002 NUMBER(16),
  AAB001 NUMBER(16) not null,
  AAC001 NUMBER(16) not null,
  AAE140 VARCHAR2(3) not null,
  AAC030 DATE not NULL,
  AAC008 VARCHAR2(3) not null,
  AAC049 DATE,
  AAE200 NUMBER(3),
  AAB034 VARCHAR2(16) not null,
  AAA027 VARCHAR2(6),
  BAZ003 NUMBER(16),
  BAZ004 VARCHAR2(1))
PARTITION by hash(aac001)(
partition t_hash_p1 TABLESPACE test,
partition t_hash_p2 tablespace test,
partition t_hash_p3 tablespace test);
----------------另一种创建方法,分区名会使用系统默认的。
create table t_partition_hash2 (
  BAZ001 NUMBER(16),
  BAZ002 NUMBER(16),
  AAB001 NUMBER(16) not null,
  AAC001 NUMBER(16) not null,
  AAE140 VARCHAR2(3) not null,
  AAC030 DATE not NULL,
  AAC008 VARCHAR2(3) not null,
  AAC049 DATE,
  AAE200 NUMBER(3),
  AAB034 VARCHAR2(16) not null,
  AAA027 VARCHAR2(6),
  BAZ003 NUMBER(16),
  BAZ004 VARCHAR2(1))
partition by hash(aac001)
partitions 3;

-------------插入数据
INSERT /*+ append */ INTO t_partition_hash SELECT * FROM ac02;
COMMIT;
-------------建造本地索引
CREATE INDEX idx_partition_hash ON t_partition_hash(aac001) LOCAL;
-------------查询分区表,索引信息
SELECT * FROM user_part_tables;
SELECT * FROM user_tab_partitions;
SELECT * FROM user_part_indexes;
SELECT * FROM user_ind_partitions;
-------------增加分区
alter table t_partition_hash add partition t_hash_p4 ;
------------收缩表分区
alter table t_partition_hash COALESCE PARTITION;
------------收缩表分区,会导致索引失效,除非带有update indexes子句
ALTER INDEX IDX_PARTITION_HASH REBUILD PARTITION T_HASH_P2;
------------不可以删除HASH分区,如下操作会报错。
ALTER TABLE t_partition_hash DROP PARTITION t_hash_p4;

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

转载于:http://blog.itpub.net/22034023/viewspace-662598/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值