次の手順があります。
BEGIN
DECLARE retribAn INTEGER DEFAULT 0;
DECLARE cPost INTEGER(11);
DECLARE done INT DEFAULT 0;
DECLARE curTipo CURSOR FOR
SELECT RETRIBUCION_ANUAL*1.05 AS RET_AN
FROM EMPLEADOS
WHERE ID_CPOSTAL%2=0;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done=1;
OPEN curTipo;
REPEAT
FETCH curTipo INTO retribAn, cPost;
IF NOT done THEN
UPDATE EMPLEADOS
SET RETRIBUCION_ANUAL=retribAn
WHERE ID_CPOSTAL%cPost;
END IF;
UNTIL done END REPEAT;
CLOSE curTipo;
END
実行すると、SQLマネージャーは次のように出力します:
FETCH 変数の数が正しくありません
私はなぜなのか理解していない。
私は mysql の新人 =D で、英語が苦手で申し訳ありません。
ありがとう