首页 > 解决方案 > MySQL 触发器产生语法错误,但我不确定它有什么问题

问题描述

我创建了一个触发器,用于在将项目插入另一个表后更新一个表。触发器还将检查插入到新表中的值之一,并使用 if/elseif 执行适当的更新查询。我遇到了语法错误,但我不确定我的语法有什么问题

 CREATE TRIGGER Create_Media_Like_Trigger AFTER INSERT ON MediaLike
    FOR EACH ROW
            IF NEW.likeType = 'LIKE' THEN
                UPDATE Media 
                SET Media.numLikes = Media.numLikes + 1 
                WHERE Media.mediaId = NEW.mediaId
            ELSEIF NEW.likeType = 'DISLIKE' THEN
                UPDATE Media 
                SET Media.numLikes = Media.numLikes - 1 
                WHERE Media.mediaId = NEW.mediaId
            END IF;

我在 ELSEIF 行上或附近收到语法错误,但我无法弄清楚它有什么问题

标签: mysqlmysql-error-1064database-trigger

解决方案


推荐阅读