Está en la página 1de 10

PROCEDIMIENTOS

ALMACENADOS Y
FUNCIONES DE BASE
DE DATOS
PRESENTADO POR:
• ALVARADO LEÓN EBERTH JHON
• CASTILLO ATALAYA CÉSAR
• ROMERO MENDOZA JESÚS

DOCENTE: TREJO FLORES WILFREDO


1. PROCEDIMIENTOS
ALMACENADOS

Vienen a ser un conjunto de instrucciones que


se guarda en un archivo generalmente de
texto, en el cual se puede realizar diferentes
cálculos, búsquedas y visualizaciones de la
información que esta almacenada en la base
de datos.

Al igual que ocurre con las funciones, también


puede aceptar datos como parámetros, de
modo que actúa en base a éstos. Para poder
crear un procedimiento almacenado es
necesario que tengas permisos INSERT y DELETE
sobre la base de datos.
1.1. PARÁMETROS

Los parámetros se definen separados por una coma. Los


parámetros de los procedimientos almacenados de MySQL pueden
ser de tres tipos:

IN: Es el tipo de parámetro que se usa por defecto. La aplicación o


código que invoque al procedimiento tendrá que pasar un
argumento para este parámetro.

• OUT: El valor de este parámetro pude ser cambiado en el


procedimiento, y además su valor modificado será enviado de
vuelta al código o programa que invoca el procedimiento.

• INOUT: Es una mezcla de los dos conceptos anteriores. La


aplicación o código que invoca al procedimiento puede pasarle
un valor a éste, devolviendo el valor modificado al terminar la
ejecución.
1.2. PROCEDIMIENTOS
SIN PARÁMETROS DE
ENTRADA

Son aquellos procedimientos


que entre los paréntesis no
llevan ningún argumento.
1.3. PROCEDIMIENTOS CON
PARÁMETROS DE ENTRADA

Para enviarle un argumento de


entrada a un procedimiento
debemos anteponerle al nombre del
argumento la palabra reservada IN.
Pero si no le ponemos nada MySQL
lo interpreta por defecto como un
parámetro de entrada
1.4. VENTAJAS

Al reducir la carga en las capas superiores a la


aplicación, se reduce el tráfico de red y, si el
uso de los procedimientos almacenados es el
correcto, puede mejorar el rendimiento.

Al encapsular las operaciones en el propio


código SQL, nos aseguramos de que el acceso
a los datos es consistente entre todas las
aplicaciones que hagan uso de ellos.

En cuanto a seguridad, es posible limitar los


permisos de acceso de usuario a los
procedimientos almacenados y no a las tablas
directamente.
1.5. DESVENTAJAS

Aumentan el uso de la memoria: si usamos muchos


procedimientos almacenados, el uso de la memoria
de cada conexión que utiliza esos procedimientos se
incrementará sustancialmente.

Restringidos para una lógica de negocios compleja:


en realidad, las construcciones de procedimientos
almacenados no están diseñadas para desarrollar
una lógica de negocios compleja y flexible.

Difíciles de depurar. Es difícil depurar procedimientos


almacenados. Solo unos pocos sistemas de
administración de bases de datos permiten hacerlo.
2. FUNCIONES
Son similares a los procedimientos almacenados con la
diferencia de que estas siempre retornan un valor y al momento
de pasar los parámetros, no se necesita indicarles si es del tipo
input u output, esta característica es propia del MySQL.

Una función en MySQL es una rutina creada para tomar unos


parámetros, procesarlos y retornar en una salida. Se diferencian
de los procedimientos en las siguientes características:

- Solamente pueden tener parámetros de entrada IN y no


parámetros de salida OUT o INOUT.

- Deben retornar en un valor con algún tipo de dato definido.

- Solo retornan un valor individual, no un conjunto de registros.


2.1. VARIABLES
Son objetos que se usan dentro de un programa
procedimiento o función que sirven para almacenar
valores y se caracterizan porque ese valor puede
cambiar durante la ejecución del programa
procedimiento o función.

En MySQL para trabajar con un variable se tiene que


declarar y luego asignar valores.
2.2. FLUJOS DE
CONTROL
1.- CASE: Este flujo de control nos permite evaluar el resultado de un valor en particular y
dependiendo del valor que toma que sea mostrar un resultado.

2.- IF: (condición, Valorsiesverdadero, Valorsiesfalso).- Este flujo de control muestra como
resultado uno u otro valor dependiendo si se cum

3.- IFNULL: (condición, resultado propuesto).- Este flujo trata de verificar si el resultado de la
condición es nulo o no si es que es nulo devuelve el resultado propuesto; en caso contrario
retorna el resultado producto de la condición.ple o no una condición.

4.- WHILE Condición DO ……….END WHILE: Este flujo tiene la característica de ser repetitivo;
ejecuta todo lo que está dentro del bloque mientras se cumpla la condición, se usa en la
implementación de procedimientos almacenados o funciones definidas por el usuario en
MySQL.

5.- REPEAT INSTRUCCIONES UNTIL CONDICION END REPEAT: Este flujo de control tiene su mayor uso
en la implementación de procedimientos almacenados o funciones definidas por el usuario en
el las instrucciones que están dentro del bloque Repeat………Until; hasta que la condición se
cumpla.

También podría gustarte