WHILE语句中的MySQL语法错误

时间:2014-05-11 21:37:19

标签: mysql

我正在学习MySQL(v 5.6)并尝试通过一个简单的WHILE循环。我甚至只是直接复制&从manual粘贴(添加了SELECT v1;语句)。

CREATE PROCEDURE dowhile()
BEGIN
  DECLARE v1 INT DEFAULT 5;

  WHILE v1 > 0 DO
    SELECT v1;
    SET v1 = v1 - 1;
  END WHILE;
END;

Workbench给了我这个错误:

  

CREATE PROCEDURE dowhile()BEGIN DECLARE v1 INT DEFAULT   5错误代码:1064。您的SQL语法有错误;检查   手册,对应右边的MySQL服务器版本   ''在第3行0.001秒附近使用的语法

非常感谢来自更有经验的MySQL程序员的任何见解!

1 个答案:

答案 0 :(得分:6)

程序看起来不错我猜你错过了分隔符

delimiter //
CREATE PROCEDURE dowhile()
  BEGIN
   DECLARE v1 INT DEFAULT 5;
    WHILE v1 > 0 DO
     SET v1 = v1 - 1;
   END WHILE;
 END; //
delimiter ;