Я создал таблицу в Oracle с:
CREATE TABLE schema.table_name
(
col_1 NUMBER(15),
col_2 NUMBER(10),
col_3 NUMBER(10),
col_4 NUMBER,
)
PARTITION BY HASH (col_1) PARTITIONS 32;
Однако, когда я получаю с:
select DBMS_METADATA.GET_DDL('TABLE', table_name, owner) ddl
, table_name
from all_tables
where owner = 'schema'
and table_name = 'table_name';
Я получаю:
CREATE TABLE schema.table_name
(
col_1 NUMBER(15),
col_2 NUMBER(10),
col_3 NUMBER(10),
col_4 NUMBER,
)
NOLOGGING
PARTITION BY HASH (col_1)
(PARTITION "SYS_P1" ,
PARTITION "SYS_P2" ,
PARTITION "SYS_P3" ,
PARTITION "SYS_P4" ,
PARTITION "SYS_P5" ,
....
PARTITION "SYS_P32");
Я пробовал все эти параметры:
DBMS_METADATA.SET_TRANSFORM_PARAM(
DBMS_METADATA.SESSION_TRANSFORM,'STORAGE',false);
DBMS_METADATA.SET_TRANSFORM_PARAM(
DBMS_METADATA.SESSION_TRANSFORM,'TABLESPACE',false);
DBMS_METADATA.SET_TRANSFORM_PARAM(
DBMS_METADATA.SESSION_TRANSFORM,'SEGMENT_ATTRIBUTES',false);
DBMS_METADATA.SET_TRANSFORM_PARAM(
DBMS_METADATA.SESSION_TRANSFORM,'SQLTERMINATOR',true);
DBMS_METADATA.SET_TRANSFORM_PARAM(
DBMS_METADATA.SESSION_TRANSFORM,'PRETTY',true)
Есть ли способ вернуть DDL в исходный формат?