sql >> Database >  >> RDS >> Oracle

Een lijst maken van alle tabellen die in een bepaalde opgeslagen procedure in oracle worden gebruikt?

Dynamic SQL s worden overgeslagen, omdat ze niet worden gevalideerd in SEMANTIC controles tijdens compilaties

select 
   proc_syn.referenced_owner, 
   proc_syn.referenced_name, 
   proc_syn.referenced_type,
   syn_tab.table_name
from 
   dba_dependencies proc_syn, dba_synonyms syn_tab, dba_tables tables
where 
     proc_syn.name= 'YOUR_PROC' 
  AND REFERENCED_TYPE in ( 'SYNONYM','TABLE')
  AND proc_syn.referenced_name = syn_tab.synonym_name
  AND syn_tab.synonym_name = tables.table_name
  AND syn_tab.owner = 'PUBLIC'
order by 
  proc_syn.referenced_owner, syn_tab.table_name;


  1. Spotlight Cloud instellen en efficiënt problemen oplossen met SQL Server

  2. MySQL:LAST_INSERT_ID() retourneert 0

  3. logging uitgebreidheid mysql 5.7

  4. CTE-recursie om boomhiërarchie te krijgen