在DB2中如何找到其中具有给定文本中的所有存储过程(In db2 how to find all t

2019-08-17 04:39发布

我想找到是否正在系统中的所有存储过程中的任何地方使用的表。 是否有一个查询来获取SP的所有细节。

Answer 1:

您可以使用SYSCAT.TABDEP和SYSCAT.ROUTINEDEP系统目录视图。

对于动态SQL语句表,已建成,在飞行中执行,您可以使用

select routinename,text from syscat.routines where language='SQL' and locate('<table-name>',text)>0

HTH

Sathyaram



Answer 2:

接受的答案并没有为我工作,为我们的DB2的特殊味道,但它让我在正确的方向。 这是我写的查询这让我搜索存储过程在一个给定的模式:

SELECT ROUTINE_NAME, ROUTINE_DEFINITION FROM sysibm.routines 
WHERE SPECIFIC_SCHEMA='<YourSchemaName>' 
    AND ROUTINE_DEFINITION LIKE '<YourSearchText>%'

用适当的值替换YourSchemaName和YourSearchText。



文章来源: In db2 how to find all the Stored Procedures having a given text in it