2019. 10. 26. 14:32 오라클
select dbms_metadata.get_ddl 예쁘게.
이관 작업 등에서 Tool 을 사용할수 있으면 DDL 문을 쉽게 뽑을 수가 있어서 편한데 그렇지 못한 환경이 많다.
스크립을 편하게 뽑기 위해 아래와 같이 설정해 본다.
SQL>EXECUTE DBMS_METADATA.SET_TRANSFORM_PARAM (DBMS_METADATA.SESSION_TRANSFORM,'STORAGE',false);
-> 불필요한 스토리지 생성절을 제외해 준다.
SQL>SET LONG 20000 LONGCHUNKSIZE 20000 PAGESIZE 0 LINESIZE 1000 FEEDBACK OFF VERIFY OFF TRIMSPOOL ON
-> 길이가 잘려서 스크립트가 보이지 않으면 위와 같은 설정으로 셋팅
SQL> select dbms_metadata.get_ddl ('TABLE','TB_BOARD_LIST','GUEST') from dual;
정리하면 한꺼번에 SQL에서 실행
EXECUTE DBMS_METADATA.SET_TRANSFORM_PARAM (DBMS_METADATA.SESSION_TRANSFORM,'STORAGE',false);
SET LONG 20000 LONGCHUNKSIZE 20000 PAGESIZE 0 LINESIZE 1000 FEEDBACK OFF VERIFY OFF TRIMSPOOL ON
select dbms_metadata.get_ddl ('TABLE','TB_BOARD_LIST','GUEST') from dual;
CREATE TABLE "GUEST"."TB_BOARD_LIST"
( "APPLYIDX" VARCHAR2(16) NOT NULL ENABLE,
"SEQ" NUMBER(5,0) NOT NULL ENABLE,
"ID" VARCHAR2(1),
"TYPE" VARCHAR2(200),
"DEPT" VARCHAR2(100),
"DATE" VARCHAR2(8));