如何在ALL_PROCEDURES表中辨别包的子程序类型?

时间:2015-05-15 07:01:32

标签: sql database oracle

查询Oracle中的ALL_PROCEDURES表可以返回给定包的所有子程序。对于此类用例,object_type列的值为PACKAGE。如何辨别procedure_name后面的对象是过程,函数,触发器还是类型方法?

2 个答案:

答案 0 :(得分:0)

您是否要求进行程序的取消限制?如果是,请检查以下查询

select * from user_dependencies where name ='TABLE_ME'

答案 1 :(得分:0)

我尝试检查在架构浏览器中展开包时sqldeveloper的作用。 它似乎确实如此:

SELECT TEXT
FROM SYS.Dba_SOURCE
WHERE TYPE = :TYPE AND OWNER = :OWNER AND NAME = :NAME
ORDER BY LINE;

所以看起来实际上只是抓取代码然后解析它以列出包中的对象......