sp_stored_procedures (Transact-SQL)
Si applica a: SQL Server Database SQL di Azure Istanza gestita di SQL di Azure
Restituisce un elenco delle stored procedure dell'ambiente corrente.
Convenzioni relative alla sintassi Transact-SQL
Sintassi
sp_stored_procedures
[ [ @sp_name = ] N'sp_name' ]
[ , [ @sp_owner = ] N'sp_owner' ]
[ , [ @sp_qualifier = ] N'sp_qualifier' ]
[ , [ @fUsePattern = ] fUsePattern ]
[ ; ]
Argomenti
[ @sp_name = ] N'sp_name'
Nome della procedura utilizzata per restituire informazioni sul catalogo. @sp_name è nvarchar(390), con il valore predefinito NULL
. La ricerca con caratteri jolly è supportata.
[ @sp_owner = ] N'sp_owner'
Nome dello schema a cui appartiene la procedura. @sp_owner è nvarchar(384), con il valore predefinito NULL
. La ricerca con caratteri jolly è supportata. Se non viene specificato @sp_owner , si applicano le regole di visibilità delle procedure predefinite del sistema di gestione del database sottostante.
In SQL Server, se lo schema corrente contiene una routine con il nome specificato, viene restituita tale routine. Se viene specificata una stored procedure non qualificata, il motore di database cerca la routine nell'ordine seguente:
Lo schema
sys
del database corrente.Schema predefinito del chiamante, se eseguito in batch o in un'istruzione SQL dinamica. In alternativa, se il nome della procedura non qualificata si trova nel corpo di un'altra definizione di procedura, la ricerca viene quindi eseguita all'interno dello schema contenente quest'ultima procedura.
Schema
dbo
nel database corrente.
[ @sp_qualifier = ] N'sp_qualifier'
Nome del qualificatore di routine. @sp_qualifier è sysname, con un valore predefinito .NULL
Vari prodotti DBMS supportano la denominazione in tre parti per le tabelle nel formato <qualifier>.<schema>.<name>
. In SQL Server @sp_qualifier rappresenta il nome del database. In alcuni prodotti rappresenta il nome del server dell'ambiente di database della tabella.
[ @fUsePattern = ] fUsePattern
Determina se il carattere di sottolineatura (_
), la percentuale (%
) o le parentesi quadre ([
e ]
) vengono interpretate come caratteri jolly. @fUsePattern è bit, con un valore predefinito .1
0
= La corrispondenza dei criteri è disattivata.1
= La corrispondenza dei criteri è attivata.
Valori del codice restituito
Nessuno.
Set di risultati
Nome colonna | Tipo di dati | Descrizione |
---|---|---|
PROCEDURE_QUALIFIER |
sysname | Nome di qualificatore della procedura. Questa colonna può essere NULL . |
PROCEDURE_OWNER |
sysname | Nome del proprietario della procedura. Questa colonna restituisce sempre un valore . |
PROCEDURE_NAME |
nvarchar(134) | Nome della procedura. Questa colonna restituisce sempre un valore . |
NUM_INPUT_PARAMS |
int | Riservato a un uso futuro. |
NUM_OUTPUT_PARAMS |
int | Riservato a un uso futuro. |
NUM_RESULT_SETS |
int | Riservato a un uso futuro. |
REMARKS |
varchar(254) | Descrizione della procedura. SQL Server non restituisce un valore per questa colonna. |
PROCEDURE_TYPE |
smallint | Tipo di procedura. SQL Server restituisce sempre la versione 2.0. Questo valore può essere una delle opzioni seguenti: 0 = SQL_PT_UNKNOWN 1 = SQL_PT_PROCEDURE 2 = SQL_PT_FUNCTION |
Osservazioni:
Per l'interoperabilità massima, il client del gateway deve presupporre solo i criteri di ricerca standard SQL, ovvero la percentuale (%
) e i caratteri jolly di sottolineatura (_
).
Le informazioni sulle autorizzazioni relative all'esecuzione dell'accesso a una stored procedure specifica per l'utente corrente non vengono necessariamente controllate; pertanto, l'accesso non è garantito. Viene usata solo la denominazione in tre parti. Ciò significa che solo le stored procedure locali, non le stored procedure remote (che richiedono la denominazione in quattro parti), vengono restituite quando vengono eseguite su SQL Server. Se l'attributo ACCESSIBLE_SPROC
server è Y nel set di risultati per sp_server_info
, vengono restituite solo le stored procedure che possono essere eseguite dall'utente corrente.
sp_stored_procedures
equivale a SQLProcedures
in ODBC. I risultati restituiti vengono ordinati in PROCEDURE_QUALIFIER
base a , PROCEDURE_OWNER
e PROCEDURE_NAME
.
Autorizzazioni
È richiesta SELECT
l'autorizzazione per lo schema.
Esempi
R. Restituire tutte le stored procedure nel database corrente
Nell'esempio seguente vengono restituite tutte le stored procedure nel database AdventureWorks2022.
USE AdventureWorks2022;
GO
EXEC sp_stored_procedures;
B. Restituire una singola stored procedure
Nell'esempio seguente viene restituito un set di risultati per la stored procedure uspLogError
.
USE AdventureWorks2022;
GO
sp_stored_procedures N'uspLogError',
N'dbo',
N'AdventureWorks2022',
1;