1

试图在 MySQL 中创建一个函数,但它不会通过。

DELIMITER $$
USE `companydb`$$
DROP FUNCTION IF EXISTS `sf_utils_get_hm`$$
CREATE FUNCTION `sf_utils_get_hm`(sec INT) RETURNS VARCHAR(20) CHARSET latin1
BEGIN
    DECLARE result VARCHAR(20);
    IF sec >= 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$$
DELIMITER ;

它返回此错误:

Query: CREATE FUNCTION `sf_utils_get_hm`(sec INT) RETURNS VARCHAR(20) CHARSET latin1 BEGIN DECLARE result VAR...

Error Code: 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 7

对于我的生活,我看不出有什么问题。第 7 行指向END$$...应该是正确的。我很确定我的语法是正确的。它与MySQL版本有关吗?我正在使用 5.0.67。

4

0 回答 0