DBMS_METADATA.GET_DEPENDENT_DDL list all dependent on table in Oracle

Get all dependent ddl like index, constraint, trigger on object from DBMS METADATA package

I want to check my all table related DDLs like index in my table, Constraint in my table, Trigger on my table, REF Constraints on table.

Get the Dependent DDL of table in following example


spool EMP.sql

set heading off;
set echo off;
Set pages 999;
set long 90000;
exec DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'STORAGE',false);
exec dbms_metadata.set_transform_param(dbms_metadata.session_transform,'SQLTERMINATOR',true);

select dbms_metadata.get_ddl('TABLE','EMPLOYEES','HR') output from dual;

-- Index
select dbms_metadata.get_dependent_ddl('INDEX','EMPLOYEES','HR') output from dual;

-- Constraint
select dbms_metadata.get_dependent_ddl('CONSTRAINT','EMPLOYEES','HR') output from dual;

-- REF_CONSTRAINT
select dbms_metadata.get_dependent_ddl('REF_CONSTRAINT','EMPLOYEES','HR') output from dual;

-- Trigger
select dbms_metadata.get_dependent_ddl('TRIGGER','EMPLOYEES','HR') output from dual;

spool off

Note:
1. You can also disabled storage clause in definition of Oracle by executing following statement before generated DDL’s.

exec DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'STORAGE',false);

2. Enable the SQL Terminator after each object syntax completed.

exec dbms_metadata.set_transform_param(dbms_metadata.session_transform,'SQLTERMINATOR',true);

Leave a Reply