¡Haz clic para puntuar esta entrada!
(Votos: 1 Promedio: 5)
Crear procedimiento pobtenernombreYproducto()
Portada » Crear procedimiento pobtenernombreYproducto()

Crear procedimiento pobtenernombreYproducto()

En este procedimiento utilizamos un ID para comprobar y recuperar el nombre de un cliente y de un pedido en concreto. Lo haremos sobre la base de datos tienda de ropa. He llamado al procedimiento pobtenernombreYproducto().

Publicidad

🛠️ Procedimiento PobtenerNombre_clienteYTituloLibro ()

-- usamos la base de datos tienda de ropa:

use tienda_ropa;

-- mostramos las tablas presentes:

select * from clientes;
select * from pedidos;

-- vamos a realizar la consulta antes, de meterla en el procedimiento para ver si funciona:
/*
seleccionamos el nombre del cliente y del producto, como están en dos tablas distintas, utilizamos inner join para unir las dos tablas.
Utilizamos la clave ajena id_cliente de la tabla pedidos con la clave primaria de la tabla clientes.
*/

select c.nombre, p.producto from pedidos as p inner join clientes as c on p.id_cliente = c.id where c.id = 1;

-- comenzamos con el procedimiento, pero antes hagamos que se borre si ya existe:

DROP procedure if exists pobtenernombreYproducto;

-- colocamos los delimitadores por defecto:

DELIMITER //
-- Creamos un procedimiento con el nombre de 'pobtenernombreYproducto' utilizamos el id como parámetro de entrada para comprobar los datos. El parámetro out lo usaremos para recuperar el nombre del cliente, y el nombre del producto.

CREATE PROCEDURE pobtenernombreYproducto(in pId int, out pnombre_cliente varchar(30), out pnombre_producto varchar (30))
BEGIN
-- Aquí metemos el código a ejecutar, pero antes declaramos un handler para excepciones:
DECLARE EXIT handler for sqlexception
BEGIN

SELECT 'error';
rollback;

END ;
-- He añadido a la consulta el parámetro de entrada para hacer la consulta más eficiente y poder pasar los parámetros desde fuera del procedimiento:

-- Recuerda usar into para guardar el resultado de una consulta en una variable.

select c.nombre, p.producto into pnombre_cliente, pnombre_producto from pedidos as p inner join clientes as c on p.id_cliente = c.id where c.id = pId;

END //

DELIMITER ;

-- usamos el procedimiento:
-- declaramos las variables:

Crear procedimiento pobtenernombreYproducto()

set @vpId = 1;
set @vpnombre_cliente = '';
set @vpnombre_producto = '';

-- Llamamos al procedimiento:

call pobtenernombreYproducto(@vpId, @vpnombre_cliente, @vpnombre_producto);

-- mostramos el procedimiento:

select @vpnombre_cliente as 'Nombre del cliente', @vpnombre_producto as 'Nombre del producto';

Resultado:

Crear procedimiento pobtenernombreYproducto()

Seguir leyendo:

¡Haz clic para puntuar esta entrada!
(Votos: 1 Promedio: 5)

Deja una respuesta

¡Haz clic para puntuar esta entrada!
(Votos: 1 Promedio: 5)
error: Content is protected !!
Hablemos de informática
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.