1

我正在尝试对本教程中的存储过程中的 while 循环进行简单测试,但 我遇到了这个错误

 Unknown Column cnt  in 'field list' 

这是sp,有人可以帮忙吗?

DELIMITER $$

CREATE PROCEDURE `WhileLoopProc` ()

BEGIN

    DECLARE cnt INT DEFAULT 1;

    DECLARE str VARCHAR(255) DEFAULT '';

    WHILE cnt  <  10 DO

       SET str = CONCAT(str,cnt,',');

       set cnt = cnt + 1 ;

    END WHILE;
SELECT str;

END $$
DELIMITER ;
4

1 回答 1

2

在以下行中,您的变量名后紧跟一个不间断空格字符 (U+00A0):

    WHILE cnt  <  10 DO
             ^--- this is U+00A0

MySQL 不识别诸如空格之类的字符,而是将其识别为变量名的一部分。

于 2013-03-17T14:52:59.397 回答