Microsoft SQL Server Recupera un elenco di tutte le stored procedure


Esempio

Le seguenti query restituiranno un elenco di tutte le stored procedure nel database, con informazioni di base su ciascuna stored procedure:

SQL Server 2005
SELECT *
FROM INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_TYPE = 'PROCEDURE'

Le ROUTINE_NAME , ROUTINE_SCHEMA e ROUTINE_DEFINITION sono generalmente le più utili.

SQL Server 2005
SELECT *
FROM sys.objects
WHERE type = 'P'
SQL Server 2005
SELECT *
FROM sys.procedures

Si noti che questa versione ha un vantaggio sulla selezione da sys.objects poiché include le colonne aggiuntive is_auto_executed , is_execution_replicated , is_repl_serializable e skips_repl_constraints .

SQL Server 2005
SELECT *
FROM sysobjects
WHERE type = 'P'

Si noti che l'output contiene molte colonne che non saranno mai correlate a una stored procedure.

La prossima serie di query restituirà tutte le stored procedure nel database che includono la stringa "SearchTerm":

SQL Server 2005
SELECT o.name
FROM syscomments c
INNER JOIN sysobjects o
    ON c.id=o.id
WHERE o.xtype = 'P'
    AND c.TEXT LIKE '%SearchTerm%'
SQL Server 2005
SELECT p.name
FROM sys.sql_modules AS m
INNER JOIN sys.procedures AS p
    ON m.object_id = p.object_id
WHERE definition LIKE '%SearchTerm%'