http://dev.csdn.net/develop/article/64/article/64/article/62/62208.shtm

解决方案 »

  1.   

    这就是我建表的sql
    create table tb_name (
    id number,
    deal_date date,
    area_code varchar2(4))
    tablespace tbs_list4
    partition by range (deal_date)
    subpartition by list (area_code)
    SUBPARTITION TEMPLATE
    (SUBPARTITION AREA_010 VALUES ('010'),
     SUBPARTITION AREA_020 VALUES ('020'),
    .......
     )
    partition deal_date20050201 values LESS THAN (TO_DATE(' 2005-02-02 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
    TABLESPACE tbs_list1
    (SUBPARTITION deal_date20050201_AREA_010 VALUES ('010') TABLESPACE tbs_list1,
     SUBPARTITION deal_date20050201_AREA_020 VALUES ('020') TABLESPACE tbs_list1,
    .......
    )
    partition deal_date20050202 VALUES LESS THAN (TO_DATE(' 2005-02-03 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
    TABLESPACE tbs_list2
    (SUBPARTITION deal_date20050202_AREA_010 VALUES ('010') TABLESPACE tbs_list2,
     SUBPARTITION deal_date20050202_AREA_020 VALUES ('020') TABLESPACE tbs_list2,
    .......
    )
    NOCACHE
    NOPARALLEL;  CREATE UNIQUE INDEX PRIMARY_test ON tb_name
    (deal_date,area_code)
     TABLESPACE tbs_index
     loacal (partition deal_date20050201
     (SUBPARTITION deal_date20050202_AREA_010 VALUES ('010') TABLESPACE tbs_index,
      SUBPARTITION deal_date20050201_AREA_020 VALUES ('020') TABLESPACE tbs_index,
      ......
      )
    );alter table tb_name add (
    CONSTRAINT PRIMARY_test PRIMARY KEY (deal_date,area_code)  USING INDEX LOCAL);
      

  2.   

    啊,终于知道原因了,因为同事load数据时改了参数,开了directpath,所以不维护索引造成索引失效,又长见识了,嘿嘿!