Los procedimientos almacenados son componentes de base de datos que nos permiten ejecutar procesos de inserción, selección, actualización, eliminación o la combinación de todas estas operaciones para el procesamiento de datos de una o mas tablas a la vez.
Los procedimientos almacenados son ejecutados a través de dos componentes software:
- Las aplicaciones desarrolladas en un lenguaje de programación.
- Los paquetes DTSX de Procesos Batch.
Otro escenario donde se puede hacer uso de los procedimientos almacenados es en las pruebas unitarias de componentes software donde debemos asegurarnos que el procedimiento almacenado produzca el resultado esperado ya sea una selección de datos o un mensaje, lo cual es importante para que al momento de integrar el procedimiento almacenado al sistema no existan fallos.
Para ejecutar un procedimiento almacenado (Store Procedure en ingles) en SQL Server basta con solo escribir el siguiente código:
EXEC <procedimientoalmacenado>
Ejemplo:
EXEC insertarDatosEmpleado
-------------------------------------------------------------------------------
Si el procedimiento almacenado tiene parámetros:
EXEC <procedimientoalmacenado> numero, 'texto'
Ejemplo:
EXEC actualizarDatosEmpleado 2016, 'Gerente'
-------------------------------------------------------------------------------
Si el procedimiento almacenado recibe variables como parámetros:
DECLARE <variable1> <tipoDato> (longitud), <variable2> <tipoDato2> (longitud)
SELECT TOP 1 <variable1> = valor1, <variable2> = valor2 FROM <Tabla>
SELECT <variable1>, <variable2>
EXEC <procedimientoalmacenado> <variable1>, <variable2>
Ejemplo:
DECLARE nombre varchar (20), apellido varchar (20)
SELECT TOP 1 nombre = nombreEmpleado, apellido = apellidoEmpleado FROM Empleado
SELECT nombre, apellido
EXEC insertarAscensos nombre, apellido
-------------------------------------------------------------------------------
Si el procedimiento devuelve un mensaje o un resultado:
DECLARE <variable> <tipoDato>(longitud)
EXEC <procedimientoalmacenado> <variable> output
SELECT <variable>
Ejemplo:
DECLARE mensaje varchar (30)
EXEC procesarSueldoEmpleado mensaje output
SELECT mensaje
No hay comentarios:
Publicar un comentario