You are on page 1of 4

26/3/2019 Creación de un procedimiento almacenado - SQL Server | Microsoft Docs

Crear un procedimiento
almacenado
15/03/2017 • Tiempo de lectura: 5 minutos • Colaboradores
En este artículo

Permissions
Crear un procedimiento almacenado

Consulte también

SE APLICA A: SQL Server Azure SQL Database Azure SQL Data Warehouse
Almacenamiento de datos paralelos

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

Permissions
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


https://docs.microsoft.com/es-es/sql/relational-databases/stored-procedures/create-a-stored-procedure?view=sql-server-2017 1/4
26/3/2019 Creación de un procedimiento almacenado - SQL Server | Microsoft Docs

1. En el Explorador de objetos, conéctese a una instancia del Motor de base de


datos y expándala.

2. Expanda Bases de datos, la base de datos AdventureWorks2012 y, por último,


Programación.

3. Haga clic con el botón derecho en Procedimientos almacenadosy, después, haga


clic en Nuevo procedimiento almacenado.

4. En el menú Consulta , haga clic en Especificar valores para parámetros de


plantilla.

5. 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 Su nombre.

Create Date La fecha de hoy.

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

6. Haga clic en Aceptar.

7. En el Editor de consultas, reemplace la instrucción SELECT por la siguiente


instrucción:

SQL = Copiar

SELECT FirstName, LastName, Department


FROM HumanResources.vEmployeeDepartmentHistory

https://docs.microsoft.com/es-es/sql/relational-databases/stored-procedures/create-a-stored-procedure?view=sql-server-2017 2/4
26/3/2019 Creación de un procedimiento almacenado - SQL Server | Microsoft Docs

WHERE FirstName = @FirstName AND LastName = @LastName


AND EndDate IS NULL;

8. 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.

9. Para crear el procedimiento, en el menú Consulta , haga clic en Ejecutar. El


procedimiento se crea como un objeto de la base de datos.

10. Para ver el procedimiento que aparece en el Explorador de objetos, haga clic con
el botón derecho en Procedimientos almacenados y seleccione Actualizar.

11. Para ejecutar el procedimiento, en el Explorador de objetos, haga clic con el botón
derecho en el nombre del procedimiento almacenado
HumanResources.uspGetEmployeesTest y seleccione Ejecutar procedimiento
almacenado.

12. En la ventana Ejecutar procedimiento, escriba Margheim como valor del


parámetro @LastName y Diane como valor del parámetro @FirstName.

2 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.

Usar Transact-SQL

Para crear un procedimiento en el Editor de consultas

1. En el Explorador de objetos, conéctese a una instancia del Motor de base de


datos.

2. En el menú Archivo , haga clic en Nueva consulta.

3. Copie y pegue el siguiente ejemplo 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.

= Copiar

USE AdventureWorks2012;
GO
CREATE PROCEDURE HumanResources.uspGetEmployeesTest2
https://docs.microsoft.com/es-es/sql/relational-databases/stored-procedures/create-a-stored-procedure?view=sql-server-2017 3/4
26/3/2019 Creación de un procedimiento almacenado - SQL Server | Microsoft Docs

@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

4. 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.

= Copiar

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

Consulte también
CREATE PROCEDURE (Transact-SQL)

https://docs.microsoft.com/es-es/sql/relational-databases/stored-procedures/create-a-stored-procedure?view=sql-server-2017 4/4