Oracle分区表创建、修改、删除等操作

Oracle分区表创建、修改、删除等操作

Oracle分区表创建、修改、删除等操作

分区表的概念此处省略N行文字,以下是使用按年分区的基本操作

创建分区表

CREATE TABLE "URT"."MANU_INFO" 
   (	"RESULT3_ID" NUMBER, 
"RESULT1_ID" NUMBER, 
"RESULT_DESC" VARCHAR2(1200), 
"CREATE_DATE" DATE
   )
PARTITION BY RANGE(CREATE_DATE)(
     PARTITION MANU_INFO_2016 VALUES LESS THAN (TO_DATE('2015-01-01','YYYY-MM-DD')),
     PARTITION MANU_INFO_2017 VALUES LESS THAN (TO_DATE('2016-01-01','YYYY-MM-DD')),
     PARTITION MANU_INFO_2018 VALUES LESS THAN (TO_DATE('2017-01-01','YYYY-MM-DD')),
     PARTITION MANU_INFO_2019 VALUES LESS THAN (TO_DATE('2018-01-01','YYYY-MM-DD')),
     PARTITION MANU_INFO_2020 VALUES LESS THAN (TO_DATE('2019-01-01','YYYY-MM-DD')),
     PARTITION MANU_INFO_MAX values less than (maxvalue)
)

查询分区表情况

select table_name,partition_name,high_value,num_rows from all_tab_partitions where table_name='MANU_INFO';

图片.png

修改分区表名称

alter table MANU_INFO rename partition MANU_INFO_2015 to MANU_INFO_2014;

添加分区

alter table MANU_INFO add partition MANU_INFO_2021 values less than(TO_DATE('2022-01-01', 'YYYY-MM-DD'));

删除分区

 alter table MANU_INFO drop partition MANU_INFO_MAX;