1
我有这个存储过程,其工作case语句
CREATE PROCEDURE myrange()
BEGIN
SET @start = 0;
PREPARE stmt FROM ' SELECT firstname FROM peoples ORDER BY id LIMIT ?,1 INTO @name';
WHILE @start < 5 DO
EXECUTE stmt USING @start;
CASE
WHEN @name = 'Ana'
THEN INSERT INTO mytable (log) VALUES('yes');
ELSE
INSERT INTO mytable (log) VALUES('no');
END CASE;
SET @start = @start + 1;
END WHILE;
END;
,但是,如果我从这个程序删除,这段代码:
ELSE
INSERT INTO mytable (log) VALUES('no');
mysqli_error()返回此错误:“CASE语句未找到案例”。
有人知道,为什么?
+1 - 这肯定不同于SQL Server,我不知道。 – 2012-07-14 12:38:58
供应商之间可能会有不同的东西。你必须始终敏锐地认出他们。 – 2012-07-14 12:40:54
...甚至与一个产品的版本差异。它似乎使用MySQL 5.5.25 * *允许它。 – 2012-07-14 12:44:22