Olá companheiros!
Estou com um pequeno problema, que venho tentando resolver a algum tempo…
O código é o seguinte:
[code]DELIMITER $$
/*
Esta procedure cria, para cada grupo existente, um livrable em branco.
Possibilitando, assim, a visualização de quais grupos possuem Livrables cadastrados, e quais não possuem.
*/
DROP PROCEDURE IF EXISTS pvoriginal
.criaLivrables
$$
CREATE PROCEDURE pvoriginal
.criaLivrables
()
BEGIN
DECLARE cont, maxlivrable, quantGrupos int;
select max(id_grupo) into quantGrupos from grupo;
set cont = 1;
while cont <= quantGrupos loop
insert into livrables(`id_livrable`, `plan2d3d`, `pcp`, `rcm`, `compteRenduEpc`, `gamaDeControle`, `defeitos`, `declarationDeConformite`, `sinotico`, `fnrRang2`, `ficheDet`, `st`, `pds`, `piv`, `raportEssaisCondicionement`, `macsi`, `certificatDeHomologation`) values(0,'','','','','','','','','','','','','','','','');
commit;
select max(id_livrable) into maxlivrable from livrables;
update grupo set id_livrable = maxlivrable where id_grupo = cont;
commit;
end loop;
END $$
DELIMITER ;[/code]
E a mensagem de erro retornada pelo MySQL Query Browser é:
[code]Script line: 7 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'loop
insert into livrables(`id_livrable`, `plan2d3d`, `pcp`, `rcm`, `' at line 6[/code]
Será que alguém pode me ajudar?
Abraços!