phpmyadmin中的循环不起作用

时间:2015-12-18 14:51:29

标签: php mysql phpmyadmin

我尝试在MySQL中创建循环,但它总是向我显示错误。

这是正确的代码还是我犯了错误?

DROP PROCEDURE IF EXISTS proc_loop_test;
CREATE PROCEDURE proc_loop_test()
BEGIN
    DECLARE int_val INT DEFAULT 0;
    test_loop : LOOP
       IF (int_val = 10) THEN
          LEAVE test_loop;
       END IF;
       SET int_val = int_val +1;
       SELECT int_val; 
    END LOOP; 
END;
  

#1064 - 您的SQL语法出错;检查与MySQL服务器版本对应的手册,以便在第3行的''附近使用正确的语法

1 个答案:

答案 0 :(得分:3)

问题是默认分隔符是;并且停止执行/解析过程代码。在创建过程之前更改分隔符,并在过程代码之后将其设置回;

DROP PROCEDURE IF EXISTS proc_loop_test;

DELIMITER #

CREATE PROCEDURE proc_loop_test()
BEGIN
    ...
END #

DELIMITER ;