CREATE PROCEDURE dorepeat(IN p1 INT)
BEGIN
DECLARE x INT DEFAULT 0;
REPEAT SET x = x + 1; UNTIL x > p1 END REPEAT;
END
我收到一个语法错误:
#1064 - 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 '' at line 3
但对我来说,一切似乎都是正确的。我真的没有任何线索!有人可以帮忙吗?
谢谢
最佳答案
您需要暂时change the delimiter因此,当 MySQL 客户端在第 3 行看到分号时,它不会认为您的语句已完成:
DELIMITER //
CREATE PROCEDURE dorepeat(IN p1 INT)
BEGIN
DECLARE x INT DEFAULT 0;
REPEAT SET x = x + 1; UNTIL x > p1 END REPEAT;
END//
DELIMITER ;
关于mysql - mysql变量声明的语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7408088/