CREATE PROCEDURE p5( j INT)
BEGIN
DECLARE i INT;
SET i=0;
WHILE i < j DO
CALL p4(i);
SET i = i + 1;
END WHILE;
END
CREATE PROCEDURE ww(OUT managers VARCHAR(400))
BEGIN
DECLARE finished BOOL DEFAULT FALSE;
DECLARE count INT DEFAULT 0;
DECLARE name VARCHAR(100);
DECLARE warehouseWalker CURSOR FOR SELECT Manager FROM WAREHOUSE;
DECLARE CONTINUE HANDLER FOR NOT FOUND
SET finished = TRUE;
OPEN warehouseWalker;
FETCH warehouseWalker INTO name;
WHILE finished IS NOT TRUE DO
IF COUNT = 0 THEN
SET managers = name;
SET COUNT = 1;
ELSE
SET managers = CONCAT(managers,', ', name);
END IF;
SELECT name;
FETCH warehouseWalker INTO name;
END WHILE;
CLOSE warehouseWalker;
END;
CREATE PROCEDURE mw()
BEGIN
DECLARE finished BOOL DEFAULT FALSE;
DECLARE count INT DEFAULT 0;
DECLARE name VARCHAR(100);
DECLARE warehouseWalker CURSOR FOR SELECT Manager FROM WAREHOUSE;
DECLARE CONTINUE HANDLER FOR NOT FOUND
SET finished = TRUE;
OPEN warehouseWalker;
FETCH warehouseWalker INTO name;
WHILE finished IS NOT TRUE DO
SET @PRIVATE_SQL1 = CONCAT("SELECT SKU, QuantityOnHand, QuantityOnOrder
FROM INVENTORY, WAREHOUSE
WHERE WAREHOUSE.WarehouseID = INVENTORY.WarehouseID
AND Manager = '",name, "'");
PREPARE stmt1 FROM @PRIVATE_SQL1 ;
EXECUTE stmt1;
DEALLOCATE PREPARE stmt1;
FETCH warehouseWalker INTO name;
END WHILE;
CLOSE warehouseWalker;
END;