Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Stored Procedure in MYSQL
Stored Procedure in MYSQL
ALMACENADOS EN
MYSQL
UNIDAD TRES
QU ES PROCEDIMIENTO?
Otra manera
Show create procedure nombreproc
-> de la base de datos en uso
Y cmo
elimino un mysql> drop procedure obtenerprecio;
procedimiento
almacenado?
Oiga, y para
mandar a
llamar un mysql> call nombre_del_procedimiento();
procedimiento
?
Es buena
prctica antes
de crear un
CREATE PROCEDURE IF EXISTS
procedimiento Nombre_procedimiento
verificar si
existe. Y
NOTA: Al hacer esto se debe tener mucha precaucin, ya
eliminarlo que si existe un procedimiento con el mismo nombre que
se esta creando, sta reemplazar a la existente.
# comentario con almohadilla (solo una linea)
Funciones de 2.- CASE (similar al SWITCH o SELEC CASE de algunos lenguajes de programacin)
control
La lista de parmetros es lo que est entre parntesis inmediatamente
despus del nombre del procedimiento almacenado y pueden ser:
IN
y los OUT
INOUT
parmetros?
IN: es opcional colocarlo, puedes no indicar que tipo de argumento usars
y por defecto se tomar como IN (entrada).
Los valores que tomen las variables de este tipo no se conservarn una vez
termine de ejecutarse el procedimiento.
IN
OUT: los valores de este tipo de argumentos se establecen dentro
O
del procedimiento y pueden ser accedidos mas adelante,
aun cuando la ejecucin del procedimiento haya terminado.
U
T
INOUT: una combinacin de las dos anteriores, la variable puede
recibir valores de entrada y puede ser accedida mas adelante .
INOUT
EJEMPLO
01
Cree un procedimiento que actualice el precio de venta de
todos los productos, incrementando el precio en un
porcentaje.
mysql> alter table productos add precioventa double after precio;
Query OK, 0 rows affected (1.35 sec)
Tenemos Records: 0 Duplicates: 0 Warnings: 0
que agregar
la columna
precioventa
Mysql>Delimiter //
Paso UNO
Cambiar el
Delimitador Ya sabes porque!!!
1. Enviaremos como parmetro el porcentaje, que se usar para
calcular el precio de venta. Es un parmetro de ?
Paso DOS
ANALICEMOS
Analicemos
Analicemos
Analicemos
;
Paso CINCO
Y cmo
ejecutamos el
PROCEDIMIENTO
?
Paso SEIS
Resultado
Archivo: procedimientoprecioventa.php
Psssttt!!
Y php? jejeje
Archivo: procedimientoprecioventa.php
CONTINUACION
Psssttt!!
Y php? jejeje
EJEMPLO
02
Crear una funcin que retorne que productos han alcanzado
su stock.
EJEMPLO
03
Crear una funcin que retorne el promedio de las ventas de
los representante de ventas, dado el numero de oficina
create procedure prodmasvendido(fi date, ft date)
begin
declare pmv varchar(40);
select descripcion_prod into pmv from productos where
id_prod = (
select idprod from detallesventas group by idprod
having sum(cantidad) = (select distinct sum(cantidad) from
detallesventas
group by idprod order by sum(cantidad) desc limit 1)
) and fecha>= fi and fecha<= ft ;
return pmv;
end//