繁体   English   中英

如何在Trigget插入mysql之后执行程序?

[英]How execute procedure in trigget INSERT AFTER mysql?

我在这里发现了很多问题,例如: 在触发器中执行过程

但暂时无法在此处发表自己的评论。

我在phpmyadmin中写了触发INSERT AFTER

...

BEGIN
insert_log(1, :new.idArticle, :new.ArticleName, :new.ArticleTime, :new.ArticleCategory, :new.ArticleToUserID);
END
...

我得到错误:

MySQL:#1064-您的SQL语法有误; 检查与您的MySQL服务器版本相对应的手册,以在第2行的'((1,:new.idArticle,:new.ArticleName,:new.ArticleTime,:new.ArticleCategory,:n')附近使用正确的语法

你能告诉我哪里错了吗?

尝试这个:

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.

请让我知道,如果你有任何问题!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM