我有一个函数,我目前在PHP中使用它编写来自不同字段的邮件地址,但考虑到不同地区使用的不同格式.我试图将其复制为MySQL存储函数.我意识到在代码中而不是在数据库中执行此类操作通常会更快,但我们的Intranet可以让人们以只读方式输入原始MySQL SELECT命令,这样他们就可以构建高级搜索并保存查询.将使用此特定功能,以便用户可以将其高级搜索查询结果输出到标签布局.
当我尝试使用phpMyAdmin 3.4.9(最新稳定版)存储该函数时,我收到以下错误:
#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 51
我还安装了最新的MySQL Workbench并得到了相同的错误,但它也突出显示了“END’附近的SQL语法错误”,因此它不仅仅是phpMyAdmin中的一个错误(尽管它可能是phpMyAdmin和MySQL Workbench中的一个错误).
这是函数查询:
DELIMITER ;;
DROP FUNCTION IF EXISTS ADDRESS_BUILD;;
CREATE FUNCTION ADDRESS_BUILD(contact VARCHAR(50),company VARCHAR(100),add1 VARCHAR(255),add2 VARCHAR(255),add3 VARCHAR(255),town_city VARCHAR(50),county_state VARCHAR(50),postcode_zip VARCHAR(50),country VARCHAR(100),`separator` VARCHAR(10),type VARCHAR(10))
RETURNS TEXT
DETERMIN