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 に答える