MySQL触发器更新另一个表

MySQL触发器更新另一个表,mysql,Mysql,我使用的是mysql 5.7,数据库结构如下图所示 每当将课程日志插入表课程历史记录时,我希望表课程上的列“课程左1”下降1,但它不起作用 CREATE TRIGGER Course_reduce AFTER INSERT ON Course_history FOR EACH ROW UPDATE Course SET Course.Course_left1 = (Course.Course_left1 - 1) where NEW.Sid = Course.Sid Sid代表学生

我使用的是mysql 5.7,数据库结构如下图所示

每当将课程日志插入表课程历史记录时,我希望表课程上的列“课程左1”下降1,但它不起作用

CREATE TRIGGER Course_reduce
AFTER INSERT ON Course_history
FOR EACH ROW
    UPDATE Course SET Course.Course_left1 = (Course.Course_left1 - 1) where NEW.Sid = Course.Sid

Sid代表学生的id,而Course_left1和Course_left2代表特定学生的课程剩余


现在,如果我在表Course\u history中插入一个元组,我希望表Course中的Course\u left1减去1,这就是31

您真正想解决的问题是什么?可能会将您的
WHERE
条件从
WHERE NEW.Sid=Course.Sid
翻转到
WHERE Course.Sid=NEW.Sid
@IgorIlic trued,不工作缺少终止符的部分触发器按编码工作。如果你不认为这是有帮助的,如果你添加了样本数据和预期结果,那么在问题中用粗体和医学术语详细说明我想做什么。