检查SQL Server数据库中是否存在procedure



我想知道是否有任何方法可以在服务器的所有数据库中搜索过程(该服务器上只有SQL server数据库)。

到目前为止,我只发现了如何使用Object_id()在某个数据库中查找存储过程,但是手动搜索每个数据库需要花费太长时间。我还想知道存储过程应用在哪个数据库中。

我找到的代码:

select * 
from MyDataBase.sys.objects 
where object_id = object_id(N'MyProcedure')

您可以试试下面的代码

CREATE TABLE #SPs (db_name varchar(100), name varchar(100), object_id int)

EXEC sp_msforeachdb 'USE [?];INSERT INTO #SPs select " ?, name, object_id from sys.procedures'

SELECT * FROM #SPs

参见:https://dba.stackexchange.com/questions/130399/script-to-find-the-list-of-stored-procedures-in-all-databases

相关内容

  • 没有找到相关文章

最新更新