当我在不同的数据库中运行相同的查询时,它可以成功运行。但是在mysql schem中它给出了错误:
#trigger can not be created on system table
我的查询是:
delimiter //
CREATE TRIGGER `invite` AFTER INSERT ON `Invite_page`
FOR EACH ROW BEGIN
Insert into userpost(userid,url,title,preview,sentiment,time) values(NEW.userid,NEW.url,NEW.title,NEW.preview,NEW.sentiment,NEW.time);
Insert into urlcontent(userid,url,title,preview,sentiment,time) values(NEW.userid,NEW.url,NEW.title,NEW.preview,NEW.sentiment,NEW.time);
END
//
delimiter ;
如果我不能,那我该如何解决呢?
更新:
实际错误:
#1465 - Triggers can not be created on system tables
答案 0 :(得分:2)
试试这个
DELIMITER $$
CREATE TRIGGER `invite` AFTER INSERT ON `Invite_page`
FOR EACH ROW
BEGIN
Insert into userpost(userid,url,title,preview,sentiment,time) values(NEW.userid,NEW.url,NEW.title,NEW.preview,NEW.sentiment,NEW.time);
Insert into urlcontent(userid,url,title,preview,sentiment,time) values(NEW.userid,NEW.url,NEW.title,NEW.preview,NEW.sentiment,NEW.time);
END$$
DELIMITER ;
答案 1 :(得分:1)
在http://dev.mysql.com/doc/refman/5.5/en/stored-program-restrictions.html中的“触发器限制”部分下,您可以阅读:
mysql数据库中的表不允许触发。
BTW,您使用mysql
架构存储数据吗?这通常是一个非常糟糕的主意,您可能需要重新考虑您的设置。