Creazione di una stored procedure
In questo argomento viene descritta la procedura per la creazione di una stored procedure Transact-SQL utilizzando SQL Server Management Studio e l'istruzione Transact-SQL CREATE PROCEDURE.
Prima di iniziare: Autorizzazioni
Per la creazione di una stored procedure utilizzando SQL Server Management Studio, Transact-SQL
Autorizzazioni
È necessario disporre dell'autorizzazione CREATE PROCEDURE per il database e dell'autorizzazione ALTER per lo schema in cui la stored procedure viene creata.
Procedura: creazione di una stored procedure
È possibile utilizzare uno degli elementi seguenti:
SQL Server Management Studio
Transact-SQL
Utilizzo di SQL Server Management Studio
Per creare una stored procedure in Esplora oggetti
In Esplora oggetti connettersi a un'istanza del Motore di database e quindi espandere tale istanza.
Espandere Database, il database AdventureWorks2012 e quindi Programmabilità.
Fare clic con il pulsante destro del mouse su Stored procedure e quindi scegliere Nuova stored procedure.
Scegliere Imposta valori per parametri modello dal menu Query.
Nella finestra di dialogo Imposta valori per parametri modello immettere i valori seguenti per i parametri indicati.
Parametro
Valore
Autore
Your name
Data di creazione
Today's date
Descrizione
Restituisce i dati dei dipendenti.
Procedure_name
HumanResources.uspGetEmployeesTest
@Param1
@LastName
@Datatype_For_Param1
nvarchar(50)
Default_Value_For_Param1
NULL
@Param2
@FirstName
@Datatype_For_Param2
nvarchar(50)
Default_Value_For_Param2
NULL
Fare clic su OK.
Nell'editor di query sostituire l'istruzione SELECT con l'istruzione seguente:
SELECT FirstName, LastName, Department FROM HumanResources.vEmployeeDepartmentHistory WHERE FirstName = @FirstName AND LastName = @LastName AND EndDate IS NULL;
Per controllare la sintassi, scegliere Analizza dal menu Query. Se viene restituito un messaggio di errore, confrontare le istruzioni con le informazioni precedenti e apportare le modifiche necessarie.
Per creare la stored procedure, nel menu Query fare clic su Esegui. La stored procedure viene creata come un oggetto nel database.
Per visualizzare la stored procedure nell'elenco di Esplora oggetti, fare clic con il pulsante destro del mouse su Stored procedure e selezionare Aggiorna.
Per eseguire la stored procedure in Esplora oggetti, fare clic con il pulsante destro del mouse sul nome della stored procedure HumanResources.uspGetEmployeesTest e selezionare Esegui stored procedure.
Nella finestra Esegui stored procedure, immettere Margheim come valore per il parametro @LastName e immettere Diane come valore per il parametro @FirstName.
Attenzione |
---|
Convalidare sempre input di tutti gli utenti. Non concatenare l'input dell'utente prima di averlo convalidato. Non eseguire mai un comando creato dall'input dell'utente non convalidato. |
[Inizio pagina]
Utilizzo di Transact-SQL
Per creare una stored procedure nell'editor di query
In Esplora oggetti connettersi a un'istanza del Motore di database.
Scegliere Nuova query dal menu File.
Copiare l'esempio seguente e incollarlo nella finestra Query, quindi fare clic su Esegui. In questo esempio viene creata la stessa stored procedure precedente utilizzando un nome diverso.
USE AdventureWorks2012; GO CREATE PROCEDURE HumanResources.uspGetEmployeesTest2 @LastName nvarchar(50), @FirstName nvarchar(50) AS SET NOCOUNT ON; SELECT FirstName, LastName, Department FROM HumanResources.vEmployeeDepartmentHistory WHERE FirstName = @FirstName AND LastName = @LastName AND EndDate IS NULL; GO
Per eseguire la stored procedure, copiare l'esempio seguente e incollarlo in una nuova finestra Query, quindi fare clic su Esegui. Notare che vengono mostrati metodi diversi per specificare i valori del parametro.
EXECUTE HumanResources.uspGetEmployeesTest2 N'Ackerman', N'Pilar'; -- Or EXEC HumanResources.uspGetEmployeesTest2 @LastName = N'Ackerman', @FirstName = N'Pilar'; GO -- Or EXECUTE HumanResources.uspGetEmployeesTest2 @FirstName = N'Pilar', @LastName = N'Ackerman'; GO
[Torna all'inizio]