无法创建此 MySQL UDF

Can't get this MySQL UDF to Create

我在尝试创建此函数时收到各种错误代码,最近一次是:“1064 - 您的 SQL 语法有错误;请查看与您的函数相对应的手册在第 2 行“

附近使用正确语法的 MariaDB 服务器版本
CREATE FUNCTION DebtOwed(SearchEmail Varchar(70))
RETURNS FLOAT(10,2);
BEGIN
  DECLARE Total Float(10,2);
  SELECT Sum(Amount) INTO Total
  FROM tblFinances
  WHERE email=SearchEmail AND Paid=False ;
  RETURN Total;
END;

关于我做错了什么的任何线索?

您需要在定义函数时设置不同的分隔符。

所以像这样:

DELIMITER $$

CREATE FUNCTION DebtOwed(SearchEmail Varchar(70))
RETURNS FLOAT(10,2)
BEGIN
  DECLARE Total Float(10,2);
  SELECT Sum(Amount) INTO Total
  FROM tblFinances
  WHERE email=SearchEmail AND Paid=False ;
  RETURN Total;
END$$

DELIMITER ;

解决方案是需要一个不同的分隔符并删除 ;在 RETURNS FLOAT(10,2)

之后
DELIMITER $$
CREATE FUNCTION DebtOwed(SearchEmail Varchar(70))
RETURNS FLOAT(10,2)
BEGIN
  DECLARE Total Float(10,2);
  SELECT Sum(Amount) INTO Total
  FROM tblFinances
  WHERE email=SearchEmail AND Paid=False ;
  RETURN Total;
END$$
DELIMITER ;

谢谢!