小编Pat*_*icz的帖子

如何使dbms_metadata.get_ddl更漂亮/有用

我正在创建一个包来生成我的模式中的对象的DDL(您解析对象名称,并返回一个clobDDL),所以我可以生成文件,并将它们直接放入SVN.

我正在使用dbms_metadata.get_ddl它,它适用于除表/物化视图之外的所有对象.

如果我创建一个表:

create table stackoverflow
     ( col_1 varchar2(64)
     , col_2 number
     , col_3 date);

create index idx_test on stackoverflow(col_1);

alter table stackoverflow add constraint ui_test unique (col_2) using index;
Run Code Online (Sandbox Code Playgroud)

并生成DDL:

begin
   dbms_output.put_line(dbms_metadata.get_ddl( object_type => 'TABLE'
                                             , name => 'STACKOVERFLOW')
                        );
end;
Run Code Online (Sandbox Code Playgroud)

它给了我们:

CREATE TABLE "TEST_SCHEMA"."STACKOVERFLOW" 
 (  "COL_1" VARCHAR2(64), 
  "COL_2" NUMBER, 
  "COL_3" DATE, 
   CONSTRAINT "UI_TEST" UNIQUE ("COL_2")
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
STORAGE(INITIAL 131072 NEXT 131072 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE …
Run Code Online (Sandbox Code Playgroud)

oracle ddl plsqldeveloper dbms-metadata

13
推荐指数
2
解决办法
5635
查看次数

标签 统计

dbms-metadata ×1

ddl ×1

oracle ×1

plsqldeveloper ×1