sql >> Base de Datos >  >> Database Tools >> SSMS

SQL Server Management Studio:busque el procedimiento almacenado por nombre en varias bases de datos

Puede usar SQL dinámico para verificar el procedimiento en todas las bases de datos en SQL Server Management Studio

USE MASTER
GO
BEGIN TRAN

DECLARE @strt INT,@End INT,@Database NVARCHAR(50)

SELECT * INTO #T FROM Sys.databases WITH(NOLOCK) WHERE database_id>4 
ORDER BY 1

SELECT ROW_NUMBER ()OVER (ORDER BY database_Id)Db_Id,* INTO #TT FROM #T
SET @strt=1
SELECT @End=Max(Db_ID)FROM #tt

WHILE @strt<example@sqldat.com
     BEGIN
         DECLARE @string NVARCHAR(MAX)
         SELECT @Database=NAME FROM #TT WHERE example@sqldat.com

        Set @string='  Select '''example@sqldat.com+'''db_Name,* from 'example@sqldat.com+'.sys.objects 
          WHERE Name=''XYZ_procedure'''

          SET @example@sqldat.com+1
          PRINT @string
          EXEC(@string)
     END

ROLLBACK TRAN