Problema com PL/SQL no mysql Query Browser

4 respostas
victor.have

Fala pessoal, tranquilo?
Estou com problemas em um sistema aqui, que foram cadastrados alguns dados sem determinadas informações.
Logo, pensei em criar uma procedure para completar os dados que tem informações faltando no Banco de Dados.

Este é o código:

/*Procedure para setar a fase dos post-its que ainda não tenham fase cadastrada*/
DELIMITER $$
DROP PROCEDURE IF EXISTS `ai91`.`setFasePostit` $$
CREATE PROCEDURE `ai91`.`setFasePostit` ()
BEGIN
  DECLARE i_cont, cont_aux, id_atelier, id_post, id_fase, tamanhoTabela, commitator INT;

  set i_cont = 1;
  select max(id) into tamanhoTabela from postit;
  while (i_cont <= tamanhoTabela) do
    select count(*) into cont_aux from postit where `fase` = "" and `id` = i_cont;
    IF(cont_aux > 0)
      THEN
      select `id` into id_fase from fases where `atelier` = id_atelier;
      update postit set `fase` = id_fase where `id` = i_cont;
    END IF

    set i_cont = i_cont + 1;

  end while;

END $$

DELIMITER ;

Porém, o My SQL Query Browser me retorna o seguinte ERRO:
Script line: 4 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 'set i_cont = i_cont + 1;

end while;

END' at line 15

Alguém saberia me ajudar a resolver esse probleminha?
Desde já, agradeço.

4 Respostas

Fabiano_Abreu

Olá victor.have,

Observando rapidamente, falta um ponto e vírgula após o END IF;

Abraços.

_ _
Fabiano Abreu
Papo Sql - Um blog com tutoriais, dicas e truques sobre SQL

victor.have

Obrigado Fabiano!
Pra você ver, na correria do dia a dia a gente nem percebe algumas coisas!

Se precisar estou aqui, abraços!

Fabiano_Abreu

Disponha victor,

Lembrando somente que é Fabiano. :d

Abraços.

_ _
Fabiano Abreu
Papo Sql - Um blog com tutoriais, dicas e truques sobre SQL

victor.have

Desculpe!
hehe

forte abraço!

Criado 16 de março de 2012
Ultima resposta 16 de mar. de 2012
Respostas 4
Participantes 2