You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

创建MySQL函数时出现1064语法错误,请求协助排查问题

排查MySQL函数错误代码1064的语法问题

你的代码触发1064语法错误的核心原因是DELIMITER设置后的语句结束符使用错误,具体修正点及修正后的代码如下:

错误原因

当你将DELIMITER改为//后,原有的分号;不再作为语句结束标记,因此END后面的分号属于多余语法,会被MySQL判定为非法。

修正后的完整代码

DELIMITER //

CREATE FUNCTION TaxBracket (SalaryPT FLOAT)
RETURNS FLOAT
BEGIN
    DECLARE TB FLOAT;
    IF SalaryPT * 52 > 36400 THEN
        SET TB = 0.4;
    ELSE
        SET TB = 0.2;
    END IF;
    RETURN TB;
END //

DELIMITER ;

额外说明

如果修正后仍然报错,可能是MySQL默认禁止创建函数,可先执行SET GLOBAL log_bin_trust_function_creators = 1;(需管理员权限),这属于配置权限问题,不属于本次语法错误范畴。

内容的提问来源于stack exchange,提问作者Jaisal Singhani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 18:50:25