在oracle数据库中有张表的数据超过几十亿了,而且还以每天300万的数据在增长中。
如何在这张表的基础上面将表分成若干个分表。可以按照一个月一次的分。或者是5000W的分到一张表中?
能不能在下次表中的数据超过5000W后自动给分出去呢?请教?

解决方案 »

  1.   


    CREATE TABLE ORDER_ACTIVITIES 

        ORDER_ID      NUMBER(7) NOT NULL, 
        ORDER_DATE    DATE, 
        TOTAL_AMOUNT NUMBER, 
        CUSTOTMER_ID NUMBER(7), 
        PAID           CHAR(1) 

    PARTITION BY RANGE (ORDER_DATE) 

      PARTITION ORD_ACT_PART01 VALUES LESS THAN (TO_DATE('2011-10-01','YYYY-MM-DD')) TABLESPACEORD_TS01,
      PARTITION ORD_ACT_PART02 VALUES LESS THAN (TO_DATE('2011-11-01','YYYY-MM-DD')) TABLESPACE ORD_TS02, 
      PARTITION ORD_ACT_PART02 VALUES LESS THAN (TO_DATE('2011-12-01','YYYY-MM-DD')) TABLESPACE ORD_TS03 
    )对表进行时间分区,一个月一个区