获取oracle表的ddl

来源:互联网 发布:锁定mac地址 编辑:程序博客网 时间:2024/05/21 17:38

在看书的时候,浏览到一个很有用的数据字典

 

select dbms_metadata.get_ddl('TABLE','EMP') ddl from dual

     当执行CREATE命令建立对象是,ORACLE会将对象定义存放到数据字典中。而包DBMS_METADATA中的函数GET_DDL可以将EMP表的DDL显示出来

 

    下面是GET_DDL的定义

 

FUNCTION get_ddl (                object_type     IN  VARCHAR2,                name            IN  VARCHAR2,                schema          IN  VARCHAR2 DEFAULT NULL,                version         IN  VARCHAR2 DEFAULT 'COMPATIBLE',                model           IN  VARCHAR2 DEFAULT 'ORACLE',                transform       IN  VARCHAR2 DEFAULT 'DDL')        RETURN CLOB;

     可以看到在使用GET_DDL时,只需要填写OBJECT_TYPE和NAME两个参数就可以了。

 

    GET_DDL不仅可获取TABLE,还可以获取视图、函数、存储过程啊

SELECT dbms_metadata.get_ddl('VIEW', 'MY_VIEW');SELECT dbms_metadata.get_ddl('FUNCTION', 'MY_FUNCTION');
写道
更深入学习PL/SQL Packages and Types Reference
http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/d_metada.htm#ARPLS640