- Procedimento sin parametros.
- Procedimiento con parámetros de entrada.
- Procedimiento con parámetros de entrada y de salida.
Nota: Los procedimientos almacenados definidos por el usuario son creados en la base de datos actual. |
Procedimiento sin parámetros. |
/* -------------------------------------------------------------------------------- Autor: Mario Alberto Sanchez Gamboa Fecha: Descripcion: Procedimiento que realiza la suma de dos numeros y regresa el resultado mediante el uso de la sentencia SELECT. **Emplea declaracion de variables. **Asigacion de valores a variables. **Uso de ISNULL.- Remplaza el nulo por el valor especificado. **Uso de CAST.- Convierte explicitamente una expresion de un tipo de dato a otro. **Concatenacion de cadenas. -------------------------------------------------------------------------------- */ CREATE PROCEDURE spSumaSinParametros AS --Declaracion de variables DECLARE @Numero1 FLOAT, @Numero2 FLOAT, @Resultado FLOAT, @Operacion NVARCHAR(25) --Asignacion de valores iniciales SET @Numero1 = 5.55 SET @Numero2 = 15 --Operacion. --Nota: Se puede hacer uso de SELECT y/o SET para la asignacion de valores a las variables. SELECT @Resultado = ISNULL(@Numero1, 0) + ISNULL(@Numero2, 0) SET @Operacion = CAST(@Numero1 AS VARCHAR) + ' + ' + CAST(@Numero2 AS VARCHAR) + ' = ' + CAST(@Resultado AS VARCHAR) --Realizar un select con el resultado de la operacion. SELECT @Numero1 AS Numero1, @Numero2 AS Numero2, @Resultado AS Resultado, @Operacion AS Operacion GO
Para ejecutar el procedimiento almacenado empleamos la siguiente sentencia:
EXECUTE spSumaSinParametros Resultado: Numero1 Numero2 Resultado Operacion -------------------- ---------- --------------------- -------------------- 5.5499999999999998 15.0 20.550000000000001 5.55 + 15 = 20.55 (1 row(s) affected) |
Procedimiento con parámetros de entrada. |
/* -------------------------------------------------------------------------------- Autor: Mario Alberto Sanchez Gamboa Fecha: Descripcion: Procedimiento que realiza la suma de dos numeros los cuales recibe mediante parametros de entrada y regresa el resultado mediante el uso de la sentencia SELECT. **Emplea declaracion de variables. **Asigacion de valores a variables. **Uso de ISNULL.- Remplaza el nulo por el valor especificado. **Uso de CAST.- Convierte explicitamente una expresion de un tipo de dato a otro. **Concatenacion de cadenas. -------------------------------------------------------------------------------- */ CREATE PROCEDURE spSumaConParametros @Numero1 FLOAT, @Numero2 FLOAT AS --Declaracion de variables DECLARE @Resultado FLOAT, @Operacion NVARCHAR(25) --Operacion. --Nota: Se puede hacer uso de SELECT y/o SET para la asignacion de valores a las variables. SELECT @Resultado = ISNULL(@Numero1, 0) + ISNULL(@Numero2, 0) SET @Operacion = CAST(@Numero1 AS VARCHAR) + ' + ' + CAST(@Numero2 AS VARCHAR) + ' = ' + CAST(@Resultado AS VARCHAR) --Realizar un select con el resultado de la operacion. SELECT @Numero1 AS Numero1, @Numero2 AS Numero2, @Resultado AS Resultado, @Operacion AS Operacion GO
Para ejecutar el procedimiento almacenado empleamos la siguiente sentencia:
EXECUTE spSumaConParametros 5.55, 15 Resultado: Numero1 Numero2 Resultado Operacion -------------------- ---------- --------------------- -------------------- 5.5499999999999998 15.0 20.550000000000001 5.55 + 15 = 20.55 (1 row(s) affected) |
Procedimiento con parámetros de entrada y salida. |
/* -------------------------------------------------------------------------------- Autor: Mario Alberto Sanchez Gamboa Fecha: Descripcion: Procedimiento que realiza la suma de dos numeros y regresa el resultado mediante el uso un parametro de salida y una sentencia SELECT. El valor son recibidos con parametros de entrada, y el resultado es regresado mediante un parametro de salida, asi como de una sentencia SELECT. **Emplea declaracion de variables. **Asigacion de valores a variables. **Uso de ISNULL.- Remplaza el nulo por el valor especificado. **Uso de CAST.- Convierte explicitamente una expresion de un tipo de dato a otro. **Concatenacion de cadenas. -------------------------------------------------------------------------------- */ CREATE PROCEDURE spSumaConParametroDeSalida @Numero1 FLOAT, @Numero2 FLOAT, @Resultado FLOAT OUTPUT AS --Declaracion de variables DECLARE @Operacion NVARCHAR(25) --Operacion. --Nota: Se puede hacer uso de SELECT y/o SET para la asignacion de valores a las variables. SELECT @Resultado = ISNULL(@Numero1, 0) + ISNULL(@Numero2, 0) SET @Operacion = CAST(@Numero1 AS VARCHAR) + ' + ' + CAST(@Numero2 AS VARCHAR) + ' = ' + CAST(@Resultado AS VARCHAR) --Realizar un select con el resultado de la operacion. SELECT @Numero1 AS Numero1, @Numero2 AS Numero2, @Operacion AS Operacion GO
Para ejecutar el procedimiento almacenado empleamos la siguiente sentencia:
DECLARE @ParamResultado FLOAT DECLARE @EjecucionParametro INT EXECUTE @EjecucionParametro = spSumaConParametroDeSalida 5.55, 15, @ParamResultado OUTPUT SELECT @ParamResultado AS Resultado, @EjecucionParametro AS EjecucionParametro Resultado: Numero1 Numero2 Resultado Operacion -------------------- ---------- --------------------- -------------------- 5.5499999999999998 15.0 20.550000000000001 5.55 + 15 = 20.55 (1 row(s) affected) Resultado EjecucionParametro --------------------- -------------------- 20.550000000000001 0 (1 row(s) affected) |
Si se desea comprobar la existencia de un procediento se puede hacer uso de las siguientes sentencias. |
--Verificamos si el procedimiento que vamos a crear existe en la base de datos, --en caso de que exista se procede a eliminar dicho procedimiento. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'spSumaSinParametros' AND type = 'P') DROP PROCEDURE spSumaSinParametros GO |
En este ejemplo verificamos si ya existe el procedimiento spSumaSinParametros, en caso de que exista se procede a eliminarlo. |
59 comentarios:
Publicar un comentario