私はMySQL/MariaDBでプロシージャを作成したいが、わかりませんが構文エラーが出ます。ERROR 1064:SQL構文
DELIMITER $$
DROP PROCEDURE IF EXISTS proc_loop$$;
CREATE PROCEDURE proc_loop()
BEGIN
DECLARE i INT;
DECLARE j INT;
DECLARE n INT;
DECLARE c VARCHAR(3);
SET i = 1;
SET j = 1;
SELECT COUNT(*) INTO n FROM AnswerSets;
WHILE i < n DO
WHILE j < 89 DO
SELECT CONCAT("Q", j) INTO c;
INSERT INTO T_ANSWER_SET (U_ID, Q_ID, ANSWER) SELECT i, j, c FROM AnswerSets WHERE Id = i;
SET j = j + 1;
END WHILE;
SET i = i + 1;
END WHILE;
END$$;
DELIMITER ;
マイエラーメッセージ:助けを事前に
ERROR 1064 (42000) at line 16: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ';
CREATE PROCEDURE proc_loop()
BEGIN
DECLARE i INT;
DECLARE j INT;
DECLARE n ' at line 1
感謝。
'削除;' DROP PROCEDURE IFがproc_loop EXISTS後 '$$' – Solarflare
は、IF 'DROPプロシージャからのセミコロンを削除してくださいEXISTS proc_loop $$; '。 –
行3で 'ERROR 1064(42000)を取得しています:あなたはSQL構文にエラーがあります。あなたのMariaDBサーバのバージョンに対応するマニュアルをチェックしてください。 DELIMITER 'at line 1' – nicksheen