thank you who can help me.
I am doing a procedure in Mysql. everything goes ok, until I try to implement a HANDLER inside a while.
So far everything ok, save my procedure without errors:
BEGIN
SET N_CONT=0;
SET N_TOTL=5;
WHILE N_CONT <= N_TOTL DO
SET N_CONT = N_CONT +1;
END WHILE;
END
when I try to place a handler inside, I get an error and I don't see why:
BEGIN
SET N_CONT=0;
SET N_TOTL=5;
WHILE N_CONT <= N_TOTL DO
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
-- cuerpo handler
END;
SET N_CONT = N_CONT +1;
END WHILE;
END
What am I doing wrong? someone knows?
I think you need to wrap the body of the WHILE
in BEGIN...END
to be able to use DECLARE
statements in it.
BEGIN
SET N_CONT=0;
SET N_TOTL=5;
WHILE N_CONT <= N_TOTL DO
BEGIN
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
-- cuerpo handler
END;
SET N_CONT = N_CONT +1;
END
END WHILE;
END