如何识别引用Oracle中特定表的所有存储过程

时间:2017-02-21 08:42:00

标签: oracle function plsql package procedure

我正在使用Oracle 12c,需要查找存储过程/函数中正在使用特定表或视图的所有引用。

我找到了这个answer about MS SQL Server,但 Oracle ,除了sp_helpsp_depends有时返回不准确结果

我知道要搜索表text的{​​{1}}列,例如,此代码(仅搜索标准用户定义的包名,而不是系统包):

all_source

但我正在寻找 Oracle 中更优雅和/或标准的解决方案。

我也在检查这个answer是否能以任何方式帮助我。

我将不胜感激。

1 个答案:

答案 0 :(得分:2)

使用ALL_DEPENDENCIES字典表:

SELECT *
FROM   ALL_DEPENDENCIES
WHERE  referenced_name = 'YOUR_TABLE_NAME'
AND    owner           = 'YOUR_USER';