¿Cuando Debemos Usar Un Cursor?
Los cursores se
utilizan para manejar las sentencias SELECT. Un cursor esta
formado por un conjunto de registros devueltos por una instrucción SQL del
tipo SELECT. Desde un punto de visto interno a la base de datos, los cursores son
segmentos de memoria utilizados para realizar operaciones con los registros
devueltos tras ejecutar una sentencia SELECT.
¿Como Crear Y Llamar Un Proceso En Mysql?
Un procedimiento es un subprograma que ejecuta una acción específica y que no devuelve ningún valor. Un procedimiento tiene un nombre, un conjunto de parámetros (opcional) y un bloque de código.
CREATE
PROCEDURE <nombre_procedure> [(<param1> [IN|OUT|IN OUT]
<type>, <param2> [IN|OUT|IN OUT]
<type>, ...)]
BEGIN
-- Sentencias
END;
La lista de parámetros entre paréntesis debe estar siempre presente. Si no hay parámetros, se debe usar una lista de parámetros vacía ( ) . Cada parámetro es un parámetro IN por defecto. Para especificar otro tipo de parámetro, use la palabra clave OUT o INOUT antes del nombre del parámetro. Especificando IN, OUT, o INOUTsólo es valido para una PROCEDURE.
Al especificar el tipo de dato del parámetro no debemos especificar la longitud del tipo.
Los parámetros pueden ser de entrada (IN), de salida (OUT) o de entrada salida (IN OUT). El valor por defecto es IN, y se toma ese valor en caso de que no especifiquemos nada.
END;
La lista de parámetros entre paréntesis debe estar siempre presente. Si no hay parámetros, se debe usar una lista de parámetros vacía ( ) . Cada parámetro es un parámetro IN por defecto. Para especificar otro tipo de parámetro, use la palabra clave OUT o INOUT antes del nombre del parámetro. Especificando IN, OUT, o INOUTsólo es valido para una PROCEDURE.
Al especificar el tipo de dato del parámetro no debemos especificar la longitud del tipo.
Los parámetros pueden ser de entrada (IN), de salida (OUT) o de entrada salida (IN OUT). El valor por defecto es IN, y se toma ese valor en caso de que no especifiquemos nada.
¿Como Crear Una Función?
Las variables en las funciones se declaran con la sentencia DECLARE, y se asignan valores con la sentencia SET. Esta variable es de ámbito local, y será destruida una vez finalice la función. Si se desea asignar un valor por defecto a la variable en el momento de declararla se puede utilizar la sentencia DEFAULT junto con la sentencia DECLARE. Aquí teneis el ejemplo:CREATE FUNCTION HolaMundo() RETURNS VARCHAR(30)
BEGIN
DECLARE salida1 VARCHAR(30) DEFAULT 'Hola';
DECLARE salida2 VARCHAR(30);
SET salida2 = ' mundo';
RETURN CONCAT(salida1,salida2);
END;
BEGIN
DECLARE salida VARCHAR(30);
SET salida = entrada;
RETURN salida;
END;
RETURN CONCAT(salida1,salida2);
END;
Para crear función con parámetros:
CREATE FUNCTION HolaMundo(entrada VARCHAR(30)) RETURNS
CREATE FUNCTION HolaMundo(entrada VARCHAR(30)) RETURNS
VARCHAR(30)
BEGIN
DECLARE salida VARCHAR(30);
SET salida = entrada;
RETURN salida;
END;
Para llamar a esta función:
SELECT HolaMundo('Hola Mundo');
SELECT HolaMundo('Hola Mundo');
No hay comentarios:
Publicar un comentario