我在这里发现了很多问题,例如:在触发中执行程序
但不能在这里发表自己的评论,以指定一些时刻。
我有触发器INSERT AFTER,在phpmyadmin中我写道:
...
BEGIN
insert_log(1, :new.idArticle, :new.ArticleName, :new.ArticleTime, :new.ArticleCategory, :new.ArticleToUserID);
END
...
我得到错误:
MySQL:#1064-您的SQL语法有一个错误;检查与您的MySQL服务器版本相对应的手册在'(1,:new.idArticle,:new.ArticleName,:new.ArticleTime,:new.AnticleCategory,:n'在第2行
你能告诉我出了什么问题吗?
试试这个:
CREATE TRIGGER your_trigger
AFTER INSERT
ON table_name FOR EACH ROW
BEGIN
insert_log(1, NEW.idArticle, NEW.ArticleName, NEW.ArticleTime, NEW.ArticleCategory, NEW.ArticleToUserID);
END;
另外请注意,MySQL的文档页面标题为"触发器语法和示例",其中指出:
Within the trigger body, the OLD and NEW keywords enable you to access columns
in the rows affected by a trigger. OLD and NEW are MySQL extensions to triggers;
they are not case sensitive.
如果你有任何问题,请告诉我!