表结构:
create table AGG_BILL_BY_CITY
(
HOUR_ID INTEGER not null,
CITY_ID INTEGER not null,
MONTH_ID INTEGER,
CALL_TYPE_ID INTEGER not null,
DEAL_ID INTEGER not null,
OPERATOR_ID INTEGER not null,
FEE_TYPE_ID INTEGER not null,
ROAM_TYPE_ID INTEGER not null,
CALL_FEE NUMBER,
LONG_FEE NUMBER,
CALL_NUM INTEGER,
BILL_DURATION NUMBER,
CALL_DURATION NUMBER,
GPRS_IN NUMBER,
GPRS_OUT NUMBER,
LOAD_TIME DATE default sysdate,
SUM_NUM NUMBER
)
partition by range(HOUR_ID)
subpartition by hash(CITY_ID, CALL_TYPE_ID, DEAL_ID, OPERATOR_ID, FEE_TYPE_ID, ROAM_TYPE_ID)
subpartitions 32 store in(FACTDBS01, FACTDBS02, FACTDBS03, FACTDBS04, FACTDBS05, FACTDBS06, FACTDBS07, FACTDBS08, FACTDBS09, FACTDBS10, FACTDBS11, FACTDBS12, FACTDBS13, FACTDBS14, FACTDBS15, FACTDBS16, FACTDBS17, FACTDBS18, FACTDBS19, FACTDBS20, FACTDBS21, FACTDBS22, FACTDBS23, FACTDBS24, FACTDBS25, FACTDBS26, FACTDBS27, FACTDBS28, FACTDBS29, FACTDBS30, FACTDBS31,FACTDBS32)
(
partition P20060527 values less than(2006052800),
partition P20060528 values less than(2006052900)
);
此时P20060527 、P20060528的子分区都存储在31个hash表空间中
然而当我执行:
alter table AGG_BILL_BY_CITY add partition P20060530 values less than(2006053000) ;
后竟然发现P20060530的子分区都存储在AGG_BILL_BY_CITY 表的默认表空间里了,这个不是我想要的,我想让新增分区继续按照以前的两个分区一样,存储在31个表空间中,这个该怎么办?
大家有没有好办法?