48 votes

Trouver une chaîne de caractères en recherchant tous les procs stockés dans SQL Server Management Studio 2008

Existe-t-il un moyen de rechercher une chaîne dans toutes les procédures stockées dans SQL Server Management Studio ?

82voto

Lamak Points 33901
SELECT *
FROM sys.sql_modules
WHERE definition LIKE '%yourstring%'

22voto

squillman Points 4837

Jetez un coup d'œil à Recherche SQL de RedGate . Il s'agit d'un plugin de Management Studio, à télécharger gratuitement. Vous pouvez effectuer une recherche dans une base de données donnée ou dans une instance entière.

18voto

Mike Mengell Points 925

J'utilise toujours ça ;

SELECT Name
 FROM sys.procedures
 WHERE OBJECT_DEFINITION(OBJECT_ID) LIKE '%SEARCHSTRING%'

3voto

Ahmed Ali Points 117

Dans mon cas, je cherche à obtenir le schéma et le nom de la procédure stockée lorsque je recherche un texte ou un mot clé spécifique. Le code que j'utilise et qui fonctionne pour moi est le suivant :

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 se présente comme suit :

----------------------------------------------
|    Schema    |    Name                     |
----------------------------------------------
|    dbo       |  stored_procedure_name      |
----------------------------------------------
...
and so on (if the keyword exists in more than one stored procedure)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X