USE `insight_places`;
DROP procedure IF EXISTS `insight_places`.`novosAlugueis_17`;
;
DELIMITER $$
USE `insight_places`$$
CREATE DEFINER=`root`@`localhost` PROCEDURE `novosAlugueis_17`(lista VARCHAR(255), vHospedagem VARCHAR(10),
vDataInicio DATE, vDias INTEGER, vPrecoUnitario DECIMAL(10,2))
BEGIN
DECLARE vClienteNome VARCHAR(255);
DECLARE fimCursor INTEGER DEFAULT 0;
DECLARE vnome VARCHAR(255);
DECLARE cursor1 CURSOR FOR SELECT nome FROM temp_nomes;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET fimCursor = 1;
-- dropa e cria nova tabela temporaria
DROP TEMPORARY TABLE IF EXISTS temp_nomes;
CREATE TEMPORARY TABLE temp_nomes(nome VARCHAR(255));
-- passa o conteudo da lista para a tabela temporaria
CALL inclui_usuarios_lista_15(lista);
-- inicia o cursor
OPEN cursor1;
FETCH cursor1 INTO vnome;
WHILE fimcursor = 0 DO
SET vClienteNome = vnome;
CALL novoAluguel_14(vClienteNome,vHospedagem, vDataInicio, vDias, vPrecoUnitario);
FETCH cursor1 INTO vnome;
END WHILE;
CLOSE cursor1;
DROP TEMPORARY TABLE IF EXISTS temp_nomes;
END$$
DELIMITER ;
;
-- comando teste novosAlugueis_17
CALL novosAlugueis_17('Gabriel Carvalho,Erick Oliveira,Catarina Correia,Lorena Jesus', '8635', '2023-06-03', 7, 45);
SELECT * FROM reservas WHERE reserva_id IN ('10012', '10013', '10014', '10015');