{}dbms_metadata.get_ddlOracle的使用总结

dbms_metadata.get_ddl()用于获取对象的DDL,其具体用法如下。
注:在目前,为了更好地显示DDL,您需要设置以下参数:
复制代码代码如下所示:
定线200
0集PageSize
99999集长
设置反馈了
设置回音

1)拿表的DDL,索引,视图,存储过程,函数
复制代码代码如下所示:
选择dbms_metadata.get_ddl(}},'table_name ','table_owner)从双;
选择dbms_metadata.get_ddl('index ','index_name ','index_owner)从双;
选择dbms_metadata.get_ddl(','view_name ','view_owner)从双;
选择dbms_metadata.get_ddl('procedure ','procedure_name ','procedure_owner)从双;
选择dbms_metadata.get_ddl('function ','function_name ','function_owner)从双;

下面的脚本是用来把所有的表,索引,视图,存储过程,和某一个模式下的DDL功能
复制代码代码如下所示:
0集PageSize
90000集长
设置反馈了
设置回音
阀芯schema_ddl.sql
选择dbms_metadata.get_ddl(}},u.table_name,u.owner)从dba_tables U;
选择dbms_metadata.get_ddl(',u.view_name,u.owner)从dba_views U;
选择dbms_metadata.get_ddl('index ',u.index_name,u.owner)从dba_indexes U;
选择dbms_metadata.get_ddl('procedure ',u.object_name,u.owner,)从dba_objects U u.object_type = 'procedure;
选择dbms_metadata.get_ddl('function ',u.object_name,u.owner,)从dba_objects U u.object_type = 'function;
阀芯脱落;

2)的表空间的数据
通过一个单独的表空间
复制代码代码如下所示:
选择dbms_metadata.get_ddl('tablespace ','tbs_name)从双;

把所有提供的表空间
复制代码代码如下所示:
选择dbms_metadata.get_ddl('tablespace ',ts.tablespace_name)
从dba_tablespaces TS;

3)获取用户数据
得到一个单用户的DDL:
复制代码代码如下所示:
选择dbms_metadata.get_ddl(用户,'epay_user)从双;

得到所有用户的DDL:
复制代码代码如下所示:
选择dbms_metadata.get_ddl(用户,U.username)
从dba_users U;