MySQL函数使用提供的变量抛出错误

时间:2017-04-24 18:17:02

标签: mysql create-function

我想创建一个计算点之间距离的函数。

计算按预期进行,但我收到错误:

DROP FUNCTION IF EXISTS CalculateDistance;

CREATE FUNCTION CalculateDistance(breite double, laenge double) RETURNS INT READS SQL DATA

BEGIN

DECLARE breite DOUBLE;

SET @ibk_laenge = breite;
  

CREATE FUNCTION CalculateDistance(breite double,laenge double)RETURNS INT READS SQL DATA

     

BEGIN

     

DECLARE breite DOUBLE

     

MySQL meldet:Dokumentation   1064 - 您的SQL语法出错;检查>对应于您的MySQL服务器版本的手册,以便在第5行的''附近使用正确的语法

这有什么问题?

1 个答案:

答案 0 :(得分:1)

您需要先更改分隔符:

delimiter //
CREATE FUNCTION CalculateDistance ...

END //
delimiter ;

否则,函数定义会在第一个;停止,这会使其不完整。