WHILE语句中的MySQL语法错误

Phr*_*cis 4 mysql

我正在学习MySQL(v 5.6)并尝试通过一个简单的WHILE循环.我甚至只是直接从手册中复制和粘贴(添加了SELECT v1;声明).

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

  WHILE v1 > 0 DO
    SELECT v1;
    SET v1 = v1 - 1;
  END WHILE;
END;
Run Code Online (Sandbox Code Playgroud)

Workbench给了我这个错误:

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

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

Abh*_*rty 6

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

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