CREATE TRIGGER question_preserver BEFORE UPDATE ON bank
FOR EACH ROW
BEGIN
IF TRIM(NEW.question) != TRIM(OLD.question) THEN
INSERT INTO bank_question_history (id,old_question) VALUES (OLD.id,OLD.question)$$
END IF$$
END$$
我使用PHPMyAdmin的SQL窗口将该查询插入到Mysql中,使用$$的分隔符。我收到错误You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 5
我确定它显而易见,我只是错过了它,但无论我尝试什么,我都无法让它发挥作用。这个错误根本没有用,而且根据我的研究,我正在做的就像我发现的4-5个例子一样。
非常感谢任何帮助,谢谢!
答案 0 :(得分:1)
上图我在问完后就知道了。
CREATE TRIGGER question_preserver BEFORE UPDATE ON bank
FOR EACH ROW
BEGIN
IF TRIM(NEW.question) != TRIM(OLD.question) THEN
INSERT INTO bank_question_history (id,old_question) VALUES (OLD.`id`,OLD.`question`);
END IF;
END$$
您必须使用;
来破坏每个语句/命令,并使用delim $$
来结束整个触发器。