移动二级分区

使用移动分区时,应注意以下规则:

  • Partitioning_storage_clause中只可以定义表空间,其他属性不能够进行更改。
  • 移动二级子分区表时必须为其指定二级子分区表名。

其它限制同移动普通分区。

示例:移动二级子分区表

--  清理环境
DROP TABLE tab;
DROP TABLESPACE ts1;
DROP TABLESPACE ts2;

--  创建表空间
CREATE TABLESPACE ts1 DATAFILE 'ts1.dt' SIZE 5M AUTOEXTEND ON NEXT 5M;
CREATE TABLESPACE ts2 DATAFILE 'ts2.dt' SIZE 5M AUTOEXTEND ON NEXT 5M;

-- 创建分区表
CREATE TABLE tab
(
    c1 int, 
    c2 varchar(2)
)
PARTITION BY RANGE(C1)
SUBPARTITION BY LIST(C2)
(
    PARTITION p1 VALUES LESS THAN(10)
    (
        SUBPARTITION p1_sub1 VALUES ('A1', 'A2') TABLESPACE ts1,
        SUBPARTITION p1_sub2 VALUES ('B1', 'B2', 'B3') TABLESPACE ts2
    ),
    PARTITION p2 VALUES LESS THAN(20)
);

ALTER TABLE tab MOVE SUBPARTITION p1_sub1 TABLESPACE ts2;

--  删除表和表空间
DROP TABLE tab CASCADE;
DROP TABLESPACE ts1;
DROP TABLESPACE ts2;