想知道这个语法的错误是什么,因为给出的所有样本都与我尝试创建的1相似
CREATE FUNCTION test(regionCode varchar(5)) RETURNS CHAR(50)
DETERMINISTIC
READ SQL DATA
BEGIN
DECLARE NAME_FOUND CHAR(50);
SELECT 'abc' into NAME_FOUND from dual;
RETURN NAME_FOUND;
END
感谢您的帮助。
答案 0 :(得分:1)
mysql Functin只有READS SQL DATA而不是READ SQL DATA,这是你在函数中所犯的错误。请查看链接以获取更多详细信息:
https://dev.mysql.com/doc/refman/5.7/en/stored-programs-logging.html
READS SQL DATA明确告诉MySQL该函数只能从数据库中读取数据,因此,它不包含修改数据的指令,但它包含读取数据的SQL指令(e.q. SELECT)。
DELIMITER $$
CREATE FUNCTION test(regionCode varchar(5)) RETURNS CHAR(50)
DETERMINISTIC
READS SQL DATA
BEGIN
DECLARE NAME_FOUND CHAR(50);
SELECT 'abc' into NAME_FOUND from dual;
RETURN NAME_FOUND;
END
答案 1 :(得分:0)
CREATE FUNCTION test(regionCode varchar(5)) RETURNS CHAR(50)
READS SQL DATA
DETERMINISTIC
BEGIN
DECLARE NAME_FOUND CHAR(50);
SELECT 'abc' into NAME_FOUND from dual;
RETURN NAME_FOUND;
END
尝试这个查询