每当我尝试在mysql中创建以下函数时,我都会收到以下错误。错误:您的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册以获取在第4行的''附近使用的正确语法
我的功能是
CREATE FUNCTION GET_HOUR_MINUTES(seconds INT)
RETURNS VARCHAR(16)
BEGIN
DECLARE result VARCHAR(16);
IF seconds >= 3600 THEN SET result = TIME_FORMAT(SEC_TO_TIME(seconds),'%kh %lm');
ELSE SET result = TIME_FORMAT(SEC_TO_TIME(seconds),'%lm');
RETURN result;
END
创建函数之前,您需要更改定界符。如果不这样做,则CREATE语句在第一个分号处终止。
试试这个:
DELIMITER $$
CREATE FUNCTION GET_HOUR_MINUTES(seconds INT)
RETURNS VARCHAR(16)
BEGIN
DECLARE result VARCHAR(16);
IF seconds >= 3600 THEN SET result = TIME_FORMAT(SEC_TO_TIME(seconds),'%kh %lm');
ELSE SET result = TIME_FORMAT(SEC_TO_TIME(seconds),'%lm');
END IF
RETURN result;
END$$
DELIMITER ;
感谢@Ravinder捕获丢失的END IF。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句