Está en la página 1de 10

Funciones Almacenados

Stored Functions / Jairo Martínez


Funciones
Nos permiten procesar y manipular
datos de forma procedural de un
modo muy eficiente. Se pueden
usar en las sentencias SQL
independientemente del lenguaje
de programación del servidor sobre
el que se ejecuten las consultas.

M.Sc. Jairo Martínez


Funciones

• Una función almacenada es un tipo especial de programa almacenado


que retorna un único valor.

• Se usan comúnmente en para encapsular fórmulas o reglas de negocio


que son reusables en sentencias SQL u otras funciones/procedimientos
almacenados.

• A diferencia de los procedimientos, las funciones pueden utilizarse como


parte de cualquier expresión.

M.Sc. Jairo Martínez


Sintaxis de Creación
• Por defecto todos los
parámetros son “IN”

• No se puede especificar otro


tipo.

• El tipo de retorno, puede ser


cualquier tipo válido en MySQL.

• Si no se especifica, la función es
no determinística

• ¿Qué es determinista/no
determinista?

M.Sc. Jairo Martínez


Declaración de variables

• Nombre de variable después de DECLARE

• Después el tipo de dato

• Por último, se puede definir el valor por


defecto. Si no se especifica, el valor por
defecto es null

M.Sc. Jairo Martínez


Establecer variable
• Dos formás básicas:

• SET

• INTO

• Se puede acceder a la variable solo dentro


del bloque

• Una variable que comienza con @ es una


variable de sesión. Permanece activa,
mientras la sesión exista.

M.Sc. Jairo Martínez


Rendimiento
Si la función tiene instrucciones
SQL que hacen consultas a las
tablas, entonces es mejor no
usarlas en otras consultas SQL,
porque disminuye el rendimiento

M.Sc. Jairo Martínez


Ejemplo
M.Sc. Jairo Martínez
M.Sc. Jairo Martínez

También podría gustarte