【发布时间】:2019-10-23 09:32:28
【问题描述】:
我在存储过程中做了一些更改(比如 A),在我的项目中有超过 500 个存储过程。
可能有存储过程在其中执行我的存储过程A。
现在我需要知道,我的更改会影响哪些其他存储过程?
我的意思是:如何知道存储过程A是从哪些其他存储过程中调用的?有可能吗?
【问题讨论】:
-
您需要查看其他 SP 的定义。您可以使用 SQL Search 之类的东西来执行此操作,或者您可以将
sys.sql_modules和sys.procedures对象与LIKE语句一起用于definition列。 -
您通常可以查看系统表。 但是存储过程可以执行动态 SQL ——并且这些调用不会在元数据中捕获。出于这个原因,我喜欢对实际发生的事情进行审计跟踪。
标签: sql sql-server stored-procedures