Partitioning of table in oracle 10g - How to Add
kumar73Mar 25 2011 — edited Mar 25 2011Hello Friends ,
Hope you are all fine and doing great.
By the way - I have a quick question on oracle 10g Partitioning of tables...
I have a table with partition as stated below ..
CREATE TABLE X_ACC_ASSETS_GPC_AGG
(
X_ACC_ASSETS_GPC_AGG_RK NUMBER(10) NOT NULL,
X_AS_OF_DT DATE NOT NULL,
ACCOUNT_RK NUMBER(10) NOT NULL,
X_UNIV_ACCOUNT_ID NUMBER(10),
ACCOUNT_ID VARCHAR2(10 BYTE),
X_ASSET_TYPE_CD VARCHAR2(6 BYTE),
X_AUC_AMT NUMBER(18,5),
X_FIRM_AMT NUMBER(18,5),
X_ADJ_SRCE_AMT NUMBER(18,5),
PROCESSED_DTTM DATE
)PARTITION BY RANGE (X_AS_OF_DT)
(
PARTITION P200712 VALUES LESS THAN (TO_DATE(' 2008-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
NOLOGGING
NOCOMPRESS
TABLESPACE KAW_DATA
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
BUFFER_POOL DEFAULT
),
.
.
.
.
PARTITION P201112
NOLOGGING
NOCOMPRESS
TABLESPACE KAW_DATA
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
BUFFER_POOL DEFAULT
),
PARTITION PMAX
NOLOGGING
NOCOMPRESS
TABLESPACE KAW_DATA
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
BUFFER_POOL DEFAULT
)
)NOPARALLEL;
My question is :
1) How to add a partition say P201201 ..
Since I have already stated PARTITION PMAX can I still add partition?
2) Can I add partition even though the table has data ?
==========================
I tried to add partition ..say
ALTER TABLE X_ACC ADD PARTITION P201201 VALUES LESS THAN
(TO_DATE(' 2012-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
NOLOGGING
NOCOMPRESS
TABLESPACE KAW_DATA
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
BUFFER_POOL DEFAULT
)
but getting the error ..
"partition bound must collate higher than that of the last partition"
Thanks/kumar