触发器不会 运行 在 MySql WorkBench

Trigger won't run in MySql WorkBench

我已经更新了我的问题,但问题仍然存在。现在它在 VALUES 附近显示我的红叉。我不知道语法有什么问题

DELIMITER $$

CREATE TRIGGER PendingPublish 
    AFTER INSERT ON TopicPending
    FOR EACH ROW
BEGIN
INSERT INTO Topics (Title,Description,Question1,Qustion2,Question3,Question4,UserID)
VALUES (NEW.Title,NEW.Descritpion,NEW.Question1,NEW.Question2,NEW.Question3,NEW.Question4,NEW.UserID) 
  FROM TopicPending  
  WHERE NEW.TopicApproved = 'YES' 
END;$$

DELIMITER ;

您的触发器具有来自 table TopicPending 的新值,因此要访问列 TopicApproved,您只需在其前面加上 New。不需要 select 它。见下文。

IF NEW.TopicApproved = 'YES' THEN
  INSERT INTO Topics (Title,Description,Question1,Qustion2,Question3,Question4,UserID)
  VALUES (NEW.Title,NEW.Description,NEW.Question1,NEW.Question2,NEW.Question3,NEW.Question4,NEW.UserID);
END IF;