昨晚接到我团队负责人的电话,他让我列出了所有程序以及Oracle中使用的表格和列。
我得到了一个查询,列出了所有程序以及表和dblink,但是在该程序中没有使用列名(如果可能的话还有DML):
select DISTINCT OWNER, NAME, referenced_name, referenced_link_name, referenced_type
from dba_dependencies
where OWNER = 'OWNER_NAME';
我要求的输出如下:
请尽可能帮助..
答案 0 :(得分:0)
列将位于DBA_TAB_COLUMNS
。
对于SQL语句,这有点困难,但如果您获得许可的诊断包,则可行;这是大纲(11g或以上):
DBA_HIST_ACTIVE_SESS_HISTORY.top_level_sql_id
是调用过程的SQL id,
所以为top_level_sql_id列出DBA_HIST_ACTIVE_SESS_HISTORY.sql_id
是"所有"执行程序的SQL。
DBA_HIST_SQL_TEXT
以获取sql_id的sql文本。
如果您没有诊断程序包,则必须为top_level_sql_id和sql_id以及v $ sql中的文本查看v $ session。