Hello Experts,
I've a code that converts an unpartitioned table into a partitioned one.
I do so in the following sequence.
Rename table to be partitioned to table_name||_OLD
Use dbms_metadata.get_ddl to generate a basic create table script appended with partition clause
Run the script.
But when I do so, I get an error: ORA-02261: such unique or primary key already exists in the table. The error is thrown because the dbms_metadata.get_ddl generates supplemental log syntax which causes this error.
Following is the table generated script.
CREATE TABLE "my_table_name"
("COMPLIANCE_RULE_RESULT_ID" NUMBER(38,0),
"SEQUENCE_ID" NUMBER(38,0),
"ASSET_SELECTOR_ID" NUMBER(38,0),
"IS_DELETED" NUMBER(1,0),
SUPPLEMENTAL LOG GROUP "GGS_142538" ("COMPLIANCE_RULE_RESULT_ID", "SEQUENCE_ID") ALWAYS,
SUPPLEMENTAL LOG DATA (ALL) COLUMNS,
SUPPLEMENTAL LOG DATA (FOREIGN KEY) COLUMNS,
SUPPLEMENTAL LOG DATA (UNIQUE INDEX) COLUMNS,
SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS,
SUPPLEMENTAL LOG GROUP "GGS_451137" ("COMPLIANCE_RULE_RESULT_ID", "SEQUENCE_ID") ALWAYS
) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
NOCOMPRESS LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "ABC"
Can you suggest something? Maybe some transform directive to suppress these supplemental log entries. Or anything to have the table created without error.
Thank you!
Girish