select DBMS_METADATA.GET_DDL(object_type , object_name,user_name) from dual;
例如:
获取某个包的定义。
select DBMS_METADATA.GET_DDL('PACKAGE','PKG_NAME','USER_NAME') from dual;
获取某个表的定义
select dbms_metadata.get_ddl('TABLE',table_name,owner) from dual;
当需要存储对象定义内容到某个知道表可以用这么方式去处理。
Insert into SP_DEPLOY_TEST
select 'PKG_NAME','PACKAGE HEADER',
dbms_metadata.get_ddl('PACKAGE','PKG_NAME','OWNER_USER')
from dual;