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

MySQL触发器语法错误求助:Error Code 1064问题排查

解决MySQL触发器1064语法错误(END附近)

错误原因

  • 触发器体内部的INSERT语句末尾未添加分号,MySQL要求每个SQL语句必须以分号结尾,缺少分号导致解析器无法识别语句边界,报错位置指向END。
  • 未临时修改语句分隔符:MySQL默认以;作为语句结束标记,触发器定义中包含分号时,会被提前判定为整个CREATE TRIGGER语句结束,导致语法错误。

修正后的代码

DELIMITER //
CREATE TRIGGER insert_adm
AFTER INSERT ON table_student
FOR EACH ROW
BEGIN
    INSERT INTO Admission(ID_Student, registration_date)
    VALUES (new.ID_Student, CURDATE());
END //
DELIMITER ;

说明

  1. DELIMITER //:临时将语句分隔符改为//,避免触发器内部的分号干扰整个语句的解析。
  2. 在INSERT语句末尾添加分号,符合MySQL语法规范。
  3. 触发器定义结束后用//标记,最后通过DELIMITER ;将分隔符改回默认的分号。

内容的提问来源于stack exchange,提问作者Mishchenko Illia

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 19:10:28