2

是否可以以某种方式查询数据库以查找更新特定表中数据的所有存储过程?

我在一个名为 Cool Gen 的旧系统上工作过,它做了这个确切的事情,目前我想要类似的东西。

我对使用该表的存储过程不感兴趣(我已经有了那个列表,它很长)。

4

2 回答 2

5

这可能会产生误报,具体取决于表名(可能在注释中或较大对象名的一部分),或者更新某个其他表然后引用该表的存储过程。

SELECT OBJECT_NAME([object_id])
  FROM sys.sql_modules
  WHERE LOWER(definition) LIKE '%update%table_name%';

我发现这比依赖依赖视图更可靠的“第一次扫描” 。

您也可以考虑使用第三方工具,例如SQL Search

于 2012-08-20T17:29:56.563 回答
1

试试这个

Select OBJECT_NAME(object_id) from sys.sql_modules 
             where definition like '%UPDATE <table_name>%'
于 2012-08-20T17:29:55.133 回答