Crear un procedimiento almacenado
En este tema se describe cómo se crea un procedimiento almacenado de Transact-SQL mediante SQL Server Management Studio y la instrucción CREATE PROCEDURE de Transact-SQL.
Antes de empezar: Permisos
Para crear un procedimiento con SQL Server Management Studio, Transact-SQL
Permisos
Requiere el permiso CREATE PROCEDURE en la base de datos y el permiso ALTER en el esquema en el que se va a crear el procedimiento.
Crear un procedimiento almacenado
Puede usar cualquiera de los siguientes medios:
SQL Server Management Studio
Transact-SQL
Usar SQL Server Management Studio
Para crear un procedimiento en el Explorador de objetos
En el Explorador de objetos, conéctese a una instancia de Motor de base de datos y expándala.
Expanda Bases de datos, la base de datos AdventureWorks2012 y, por último, Programación.
Haga clic con el botón secundario en Procedimientos almacenados y, a continuación, haga clic en Nuevo procedimiento almacenado.
En el menú Consulta, haga clic en Especificar valores para parámetros de plantilla.
En el cuadro de diálogo Especificar valores para parámetros de plantilla, especifique los siguientes valores para los parámetros mostrados.
Parámetro
Valor
Autor
Your name
Create Date
Today's date
Descripción
Devuelve datos de empleado.
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
Haga clic en Aceptar.
En el Editor de consultas, reemplace la instrucción SELECT por la siguiente instrucción:
SELECT FirstName, LastName, Department FROM HumanResources.vEmployeeDepartmentHistory WHERE FirstName = @FirstName AND LastName = @LastName AND EndDate IS NULL;
Para probar la sintaxis, en el menú Consulta, haga clic en Analizar. Si se devuelve un mensaje de error, compare las instrucciones con la información anterior y corrija lo que sea necesario.
Para crear el procedimiento, en el menú Consulta, haga clic en Ejecutar. El procedimiento se crea como un objeto de la base de datos.
Para ver el procedimiento que aparece en el Explorador de objetos, haga clic con el botón secundario en Procedimientos almacenados y seleccione Actualizar.
Para ejecutar el procedimiento, en el Explorador de objetos, haga clic con el botón secundario en el nombre del procedimiento almacenado HumanResources.uspGetEmployeesTest y seleccione Ejecutar procedimiento almacenado.
En la ventana Ejecutar procedimiento, escriba Margheim como valor del parámetro @LastName y Diane como valor del parámetro @FirstName.
Advertencia |
---|
Valide todos los datos proporcionados por el usuario. No concatene ninguna entrada de usuario antes de validarla. No ejecute nunca un comando creado a partir de una entrada de usuario no validada. |
[Arriba]
Usar Transact-SQL
Para crear un procedimiento en el Editor de consultas
En el Explorador de objetos, conéctese a una instancia de Motor de base de datos.
En el menú Archivo, haga clic en Nueva consulta.
Copie y pegue el ejemplo siguiente en la ventana de consulta y haga clic en Ejecutar. En este ejemplo se crea el mismo procedimiento almacenado que antes con otro nombre diferente.
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
Para ejecutar el procedimiento, copie y pegue el ejemplo siguiente en una nueva ventana de consulta y haga clic en Ejecutar. Observe que se muestran diferentes métodos para especificar los valores de parámetro.
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
[Arriba]