Mysql 是否考虑将用户定义的函数从localhost导入live server
我正在尝试将自定义用户定义的函数从localhost导入到livedemo服务器。但它显示了这个错误: MySQL说:文档1064-您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解第3行附近要使用的正确语法 我正在从localhost复制并尝试在演示服务器上运行。 你知道我哪里错了吗?好的,我得到了这个错误Mysql 是否考虑将用户定义的函数从localhost导入live server,mysql,phpmyadmin,Mysql,Phpmyadmin,我正在尝试将自定义用户定义的函数从localhost导入到livedemo服务器。但它显示了这个错误: MySQL说:文档1064-您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解第3行附近要使用的正确语法 我正在从localhost复制并尝试在演示服务器上运行。 你知道我哪里错了吗?好的,我得到了这个错误 问题是这里的分隔符$$使用了此分隔符//并且在末尾使用了end//而不是此end$$。是否尝试使用delimiters DELIMITER命令?是的,我尝试使用了DELIM
问题是这里的分隔符$$使用了此分隔符//并且在末尾使用了end//而不是此end$$。是否尝试使用delimiters DELIMITER命令?是的,我尝试使用了DELIMITER,但结果相同。语法正确。请添加有关该问题的更多信息。用分隔符显示代码。您是如何执行脚本的,或者您使用的是什么客户端?我用delimiter命令更新了我的问题。
DELIMITER$$
CREATE DEFINER=`root`@`localhost` FUNCTION `isAvailable`(OwnerID INT, DateFrom DATETIME, DateTo DATETIME)
RETURNS BIT(1)
BEGIN
DECLARE t BIT;
IF DateFrom IS NULL OR DateTo IS NULL OR EXISTS (SELECT DateID FROM tbl_name WHERE OwnerID=OwnerID AND ((DateFrom<=DateFrom AND DateFrom<=DateTo) OR (DateFrom<=DateTo AND DateTo<=DateTo)))
THEN
SET t=0;
ELSE
SET t=1;
RETURN t;
END IF;
END$$
DELIMITER;