I'm trying to generate DDL with JAVA Calling:
DBMS_METADATA.GET_DDL;
DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'PRETTY',TRUE);
It works Fine but it gives me something like:
CREATE TABLE "DEPARTMENTS"
( "DEPARTMENT_ID" NUMBER(4,0),
"DEPARTMENT_NAME" VARCHAR2(30),
"MANAGER_ID" NUMBER(6,0),
"LOCATION_ID" NUMBER(4,0)
);
CREATE INDEX "DEPT_LOCATION_IX" ON "DEPARTMENTS" ("LOCATION_ID");
And I want something like:
CREATE TABLE "DEPARTMENTS"
(
"DEPARTMENT_ID" NUMBER(4,0),
"DEPARTMENT_NAME" VARCHAR2(30),
"MANAGER_ID" NUMBER(6,0),
"LOCATION_ID" NUMBER(4,0)
);
CREATE INDEX "DEPT_LOCATION_IX" ON "DEPARTMENTS" ("LOCATION_ID");
Not the best answer but since I'm using java I can try printf to align columns' type :
This method writes in file the DDL of table making the columns lower case and align their type :