Existe-t-il un moyen de rechercher une chaîne dans tous les processus stockés dans SQL Server Management Studio?
SELECT *
FROM sys.sql_modules
WHERE definition LIKE '%yourstring%'
Jetez un œil à Recherche SQL de RedGate . C'est un plugin Management Studio et un téléchargement gratuit. Vous pouvez rechercher dans une base de données donnée ou dans une instance entière.
J'utilise toujours cela;
SELECT Name
FROM sys.procedures
WHERE OBJECT_DEFINITION(OBJECT_ID) LIKE '%SEARCHSTRING%'
Dans mon cas, je cherchais à obtenir le schéma et le nom de la procédure stockée chaque fois que je cherchais un texte ou un mot clé spécifique. Le code que j'utilise et qui fonctionne pour moi est:
USE [your_DB_name];
GO
SELECT [Scehma]=schema_name(o.schema_id), o.Name
FROM sys.sql_modules m
INNER JOIN sys.objects o
ON o.object_id = m.object_id
WHERE m.definition like '%your keyword%'
GO
Le résultat est simple et comme suit:
----------------------------------------------
| Schema | Name |
----------------------------------------------
| dbo | stored_procedure_name |
----------------------------------------------
...
and so on (if the keyword exists in more than one stored procedure)