MySQL While循环抛出错误

Sam*_*ett 1 mysql sql while-loop

SELECT COUNT(*) INTO @count FROM `tableName` WHERE `id` = OLD.id;

WHILE @count > -1 DO
    SET @count = @count - 1;
    /* loop logic in here */
END WHILE;
Run Code Online (Sandbox Code Playgroud)

我有这个SQL,但是当我运行它时,我得到一个错误(SQL语法),MySQL说它接近WHILE @count > -1 DO SET @count = @count - 1;.我已经尝试在一个BEGIN ... END;区块中包裹,但这根本不会影响它.

由于MySQL出色的模糊错误,我无法弄清楚我做错了什么.

我确信这很简单但是已经很晚了,我无法发现它的生命.

a1e*_*x07 5

您不能只在mysql客户端命令行中运行此代码.您可以在存储过程/函数或触发器的主体中使用复合语句