sample
1 - create partitioned table with subpartition.
SQL> CREATE TABLE vty_log
(tarih DATE,
program VARCHAR2(6),
pcismi VARCHAR2(12),
mesaj VARCHAR2(2000),
boyut NUMBER(10,0))
PARTITION BY RANGE (TARIH)
SUBPARTITION BY HASH (program)
(
PARTITION vty_log_201201 VALUES LESS THAN (TO_DATE(' 2012-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
LOGGING
(
SUBPARTITION vty_log_201201_P1,
SUBPARTITION vty_log_201201_P2,
SUBPARTITION vty_log_201201_P3,
SUBPARTITION vty_log_201201_P4
)
);
2- try to modify subpartition column
SQL> alter table vty_log modify program varchar2(10);
*
ERROR at line 1:
ORA-14265: data type or length of a table subpartitioning column may not be changed
you have to drop/create table to achive this problem.
You can create non-partition table for each partition which has same name with partition
and exchange partition
or
If have enoguh downtime you can export/import with orjinal table.
or
you can create dummy table desired structure and you can insert/select/rename.
Hiç yorum yok:
Yorum Gönder