+-

我发现这个函数用于大写字符串中单词的第一个字母,但当我尝试在 PHPMyadmin中的SQL中运行它时,它在第8行给出了语法错误.任何人都可以帮我解决问题所在吗?
这是代码:
这是代码:
CREATE FUNCTION CAP_FIRST (input VARCHAR(255))
RETURNS VARCHAR(255)
DETERMINISTIC
BEGIN
DECLARE len INT;
DECLARE i INT;
SET len = CHAR_LENGTH(input);
SET input = LOWER(input);
SET i = 0;
WHILE (i < len) DO
IF (MID(input,i,1) = ' ' OR i = 0) THEN
IF (i < len) THEN
SET input = CONCAT(
LEFT(input,i),
UPPER(MID(input,i + 1,1)),
RIGHT(input,len - i - 1)
);
END IF;
END IF;
SET i = i + 1;
END WHILE;
RETURN input;
END;
这是错误:
MySQL说:文档
#1064 – 您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在第8行的”附近使用正确的语法
最佳答案
分隔符向DB引擎发出语句结束的信号.通常是;.但那会在第一时间结束存储过程;它的定义是不完整的.
您可以更改分隔符并将其添加到过程的末尾.之后将分隔符更改回;
delimiter |
CREATE FUNCTION CAP_FIRST (input VARCHAR(255))
...
END;
|
delimiter ;
点击查看更多相关文章
转载注明原文:mysql – CAP_FIRST函数给出了语法错误 - 乐贴网