23

Diferencias entre procedimientos y funciones en MariaDB (Curso de MariaDB desde cero [23])

En este ejercicio vamos a aprender las siguientes diferencias entre procedimientos y funciones en MariaDB de forma práctica:

Los procedimientos pueden retornar varios parámetros de salida y las funciones solo retornan una sola variable.
Los parámetros de retorno o de salida en los procedimientos son opcionales y en las funciones es obligatorio que se tenga re que retornar por lo menos un valor.
Las funciones se pueden llamar en cualquier sentencia de SQL y los procedimientos solo se pueden llamar mediante call. Incluso se puede llamar una función dentro de una procedimiento.

Para entender mejor las diferencias entre procedimientos y funciones vamos a hacer el siguiente ejercicio:
Crear un procedimiento llamado operaciones_mat que:
Que pida (in) dos números enteros.
Que retorne dos números enteros con los resultados de suma y multiplicación respectivamente.
Crearemos dos funciones llamadas suma y multiplicación que retornen un valor con el resultado de la suma y la multiplicación respectivamente.
Llamar las funciones dentro del procedimiento.

Codigo:
drop procedure operaciones_mat;
delimiter //
create procedure operaciones_mat(in n1 int,in n2 int,out res_suma int,out res_mul int)
begin
select suma(n1,n2),mul(n1,n2) into res_suma,res_mul;
end//
delimiter ;

call operaciones_mat(3,3,@suma,@mul);
select @suma,@mul;

delimiter //
create function suma(n1 int,n2 int) returns int
begin
return n1+n2;
end//
delimiter ;

delimiter //
create function mul(n1 int,n2 int) returns int
begin
return n1*n2;
end//
delimiter ;

select suma(3,3);
select mul(3,3);

Diferencias entre procedimientos y funciones en MariaDB

🎦 [CURSO] MYSQL DE 0 A 100🐬: https://www.youtube.com/playlist?list=PLCTD_CpMeEKQmH9cRKWWHahygZFtIdwYG
🎦 [CURSO] PhpMyAdmin En español 🇪🇸: https://www.youtube.com/playlist?list=PLCTD_CpMeEKRDDCpQho7sg1iNYQpOy2G4

🔗 Facebook: https://facebook.com/ProgramadorNovatoOficial
🔗 Twitter: https://twitter.com/programadornova
🔗 Linkedin: https://www.linkedin.com/in/programadornovato/
🔗 Instagram: https://www.instagram.com/programadornovato/
🔗 Pagina oficial: https://www.programadornovato.com
🔗 Gracias por apoyar este canal: https://www.patreon.com/programadornovato
🎦 Canal de youtube: https://www.youtube.com/c/programadornovato

<<Anterior tutorial Siguiente tutorial >>

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Información básica sobre protección de datos Ver más

  • Responsable: Eugenio Chaparro.
  • Finalidad:  Moderar los comentarios.
  • Legitimación:  Por consentimiento del interesado.
  • Destinatarios y encargados de tratamiento:  No se ceden o comunican datos a terceros para prestar este servicio. El Titular ha contratado los servicios de alojamiento web a digitalocean.com que actúa como encargado de tratamiento.
  • Derechos: Acceder, rectificar y suprimir los datos.
  • Información Adicional: Puede consultar la información detallada en la Política de Privacidad.

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad