Triggers 错误代码:1193。未知系统变量';行动';

Triggers 错误代码:1193。未知系统变量';行动';,triggers,Triggers,分隔符// 如果存在tr_过期,则触发 // 创建触发器tr_过期 --触发器的类型等 发票更新后 每行 开始 如果状态为“过期”,则 插入警报值(new.message\u日期、new.origin、new.message); 设置操作='更新', message_date=NOW(), origin=old.campaigno,message='编号为'+old.invoiceno+'的发票现已过期'; 如果结束; 结束 我不确定您在SET语句中更新的列是否也属于Invoice,但如果它们属

分隔符// 如果存在tr_过期,则触发 //

创建触发器tr_过期 --触发器的类型等
发票更新后 每行 开始 如果状态为“过期”,则 插入警报值(new.message\u日期、new.origin、new.message); 设置操作='更新', message_date=NOW(), origin=old.campaigno,message='编号为'+old.invoiceno+'的发票现已过期'; 如果结束; 结束

我不确定您在SET语句中更新的列是否也属于Invoice,但如果它们属于Invoice,则应将它们包含在INSERT语句中,这样可以解决问题

CREATE TRIGGER tr_overdue AFTER UPDATE ON Invoice FOR EACH ROW IF STATUS = 'overdue' THEN INSERT INTO alerts(columns1, column2,...) VALUES(new.message_date,new.origin,new.message);