美文网首页
创建分区表

创建分区表

作者: liuxiaolin | 来源:发表于2020-11-06 14:57 被阅读0次

    第一种方式:自定义字段

    CREATE TABLE TABLE_NAME (COL1 VARCHAR2(20),
    COL2 NUMBER,
    COL3 DATE,
    COL4 FLOAT,
    COL5 CLOB ,
    CONSTRAINT PK_NAME UNIQUE PRIMARY KEY ("COL1") --声明主键,这点非常重要
    )
    PARTITION BY RANGE(COL3) --分区字段
    INTERVAL ( NUMTOYMINTERVAL(1,'MONTH')) --分区间隔,按月分区
    (
    PARTITION p1 VALUES LESS THAN (TO_DATE('2017-06-01','YYYY-MM-DD')) -- 设定第一个分区
    )
    ROWDEPENDENCIES --定义SCN行级依赖

    第二种方式:引用其他表的字段,通常用来表重建。

    CREATE TABLE TABLE_NAME
    PARTITION BY RANGE(COL3) --分区字段
    INTERVAL(NUMTOYMINTERVAL(1,'MONTH')) --定义分区时间间隔

    PARTITION p1 VALUES LESS THAN(TO_DATE('2017-06-01','YYYY-MM-DD')) --定义第一个分区

    ROWDEPENDENCIES NOLOGGING --定义SCN行级依赖
    AS
    SELECT * FROM TABLE_NAME2

    这种方式只是复制了源表的表结构,源表的索引、主键并没有复制过来,所以建好表之后要及时手动创建主键和索引,否则表的IO性能(UPDATE,INSERT)会非常非常糟糕。

    主键:
     ALTER TABLE TABLE_NAME2 ADD CONSTRAINT PK_NAME PRIMARY KEY ("COL1") NOLOGGING ;

    索引:
      CREATE INDEX IDX_NAME ON TABLE_NAME2(COL2) ONLINE NOLOGGING;

    相关文章

      网友评论

          本文标题:创建分区表

          本文链接:https://www.haomeiwen.com/subject/pietbktx.html