You are on page 1of 3

Ejercicio 1

DELIMITER $$
DROP PROCEDURE IF EXISTS electronica.nuevofabricante $$
CREATE PROCEDURE electronica.nuevofabricante(IN nombre VARCHAR(80))
BEGIN
INSERT INTO fabricantes VALUES(NULL, nombre);
END $$
DELIMITER ;

Ejercicio 2
DELIMITER $$
DROP PROCEDURE IF EXISTS electronica.nuevoarticulo $$
CREATE PROCEDURE electronica.nuevoarticulo(IN cod INT,
IN articulo VARCHAR(50),
IN pvp INT)
BEGIN
INSERT INTO articulos VALUES(NULL, articulo, cod, pvp, 10);
END $$
DELIMITER ;

Ejercicio 3

DELIMITER $$
DROP PROCEDURE IF EXISTS electronica.minstock $$
CREATE PROCEDURE electronica.minstock()
BEGIN
SELECT nom_fabricante, nombre, precio, stock
FROM fabricantes, articulos WHERE fab_id = fabricante_id
AND stock < 10;
END $$
DELIMITER ;
Ejercicio 4

DELIMITER $$
DROP PROCEDURE IF EXISTS electronica.stock $$
CREATE PROCEDURE electronica.stock(IN cod INT)
BEGIN
SELECT stock INTO @s FROM articulos WHERE articulo_id = cod;
SELECT nombre INTO @n FROM articulos WHERE articulo_id = cod;
IF @s < 10 THEN
SELECT "Este artículo tiene menos de 10 unidades en stock"
INTO @t;
ELSE
SELECT "Este artículo tiene más de 10 unidades en stock"
INTO @t;
END IF;
SELECT @n, @t;
END $$
DELIMITER ;

Ejercicio 5
DELIMITER $$
DROP PROCEDURE IF EXISTS electronica.nuevoprecio $$
CREATE PROCEDURE electronica.nuevoprecio(IN cod INT,
IN nuevoprecio INT)
BEGIN
UPDATE articulos SET precio = nuevoprecio
WHERE articulo_id = cod;
END $$
DELIMITER ;

Ejercicio 6
DELIMITER $$
DROP PROCEDURE IF EXISTS electronica.borrafab $$
CREATE PROCEDURE electronica.borrafab(IN cod INT)
BEGIN
DELETE FROM articulos WHERE fab_id = cod;
DELETE FROM fabricantes WHERE fabricante_id = cod;
END $$
DELIMITER ;
Ejercicio 7
DELIMITER $$
DROP PROCEDURE IF EXISTS electronica.actualizastock $$
CREATE PROCEDURE electronica.actualizastock(IN cod INT,
IN cantidad INT)
BEGIN
SELECT stock INTO @s FROM articulos WHERE articulo_id = cod;
SET @s = @s + cantidad;
UPDATE articulos SET stock = @s WHERE articulo_id = cod;
END $$
DELIMITER ;

Ejercicio 8
DELIMITER $$
DROP PROCEDURE IF EXISTS electronica.minprecio $$
CREATE PROCEDURE electronica.minprecio(IN cantidad INT)
BEGIN
SELECT nom_fabricante, nombre, precio, stock
FROM fabricantes, articulos WHERE fab_id = fabricante_id
AND precio < cantidad;
END $$
DELIMITER ;

You might also like