DB2,引用表名称的存储过程

时间:2015-07-31 15:59:44

标签: db2 procedure refer

在DB2中 - 有任何SQL语句,当我执行时,将返回一个引用表名的存储过程列表。

2 个答案:

答案 0 :(得分:1)

您可以使用目录视图SYSCAT.ROUTINEDEP:

select specificname, routineschema from syscat.routinedep where btype='F' and bschema='yourschema' and bname='yourtable'

这将返回依赖于yourschema.yourtable标识的引用表的所有例程(包括存储过程)

答案 1 :(得分:1)

目录视图SYSCAT.ROUTINEDEP

SELECT R.ROUTINESCHEMA, R.ROUTINENAME 
FROM SYSCAT.ROUTINEDEP D, SYSCAT.ROUTINES R
WHERE D.ROUTINESCHEMA = R.ROUTINESCHEMA AND D.SPECIFICNAME = R.SPECIFICNAME 
AND D.BTYPE IN ('T','V','A') 
AND D.BSCHEMA = 'MYTABLESCHEMA' AND D.BNAME = 'MYTABLENAME'

请记住,动态SQL引用的表不会出现在SYSCAT.ROUTINEDEP