0

我正在使用 xampp 和 phpMyAdmin 来管理 MySql 数据库。创建函数时,出现“未找到返回”错误,因此我剥离了函数以缩小错误的来源,我遇到了仍然无法正常工作的最简单情况。

代码

错误信息是这样的:

错误信息

显然,如果该RETURN语句不是代码中唯一的内容,我会收到错误消息。

4

2 回答 2

3

假设对 MySQL 执行的实际代码是:

CREATE FUNCTION `Contagem`() RETURNS INT(11)
SET @c = 0;
RETURN @c;

这将失败,因为您没有将函数包装在BEGIN...中END

试着把它写成你的函数声明:

BEGIN
    SET @c = 0;
    RETURN @c;
END;

或者,直接在 MySQL 中自己声明函数:

DELIMITER $$

CREATE FUNCTION `Contagem`() RETURNS INT(11)
BEGIN
    SET @c = 0;
    RETURN @c;
END $$

DELIMITER ;
于 2019-11-28T14:16:06.870 回答
1

BEGIN在查看这篇文章时,我更仔细地阅读了错误消息,我意识到定义函数的 MySql 代码并没有END在其中。

我假设在输入多行函数代码时 phpMyAdmin 会知道如何处理它,因为代码文本框支持多行代码。

所以,把代码放在BEGIN开头和END结尾解决了我的问题。

于 2019-11-28T14:15:42.050 回答