MySQL CREATE FUNCTION语法

我正在尝试在MySQL中创建一个函数:

这是SQL代码:

CREATE FUNCTION F_Dist3D (x1 decimal, y1 decimal) 

RETURNS decimal

DETERMINISTIC

BEGIN

DECLARE dist decimal;

SET dist = SQRT(x1 - y1);

RETURN dist;

END;

我收到以下错误:

#1064 - You have an error in your SQL syntax; 

check the manual that corresponds to your MySQL

server version for the right syntax to use near '' at line 10

我正在phpMyAdmin中运行此create语句。此功能有什么问题?

回答:

您必须;使用类似的方法来覆盖定界符,$$以避免此类错误。

在定义函数之后,可以将定界符设置回;

这应该工作:

DELIMITER $$

CREATE FUNCTION F_Dist3D (x1 decimal, y1 decimal)

RETURNS decimal

DETERMINISTIC

BEGIN

DECLARE dist decimal;

SET dist = SQRT(x1 - y1);

RETURN dist;

END$$

DELIMITER ;

以上是 MySQL CREATE FUNCTION语法 的全部内容, 来源链接: utcz.com/qa/423278.html

回到顶部