2013-04-30 64 views
-4
CREATE TRIGGER pointclosedtrigger AFTER UPDATE ON points 
FOR EACH ROW BEGIN 
IF NEW.is_open='3' 
THEN 
    INSERT into point_history (idpoints,idmembers,action_time,action_type) 
    VALUES (OLD.idpoints,NEW.idmembers,NOW(),'2'); 
END IF; 
END 
+1

什么不起作用? CREATE TRIGGER'语句是成功还是失败?如果失败,有什么错误信息?如果成功,当您尝试“更新点...”时会发生什么?你有错误吗?如果是这样,什么信息?如果不是,你观察到了什么行为,这与你的期望相反吗?真的,你需要提供更多的信息。 -1 – eggyal 2013-04-30 11:41:44

回答

0

你忘了定义分隔符

delimiter | 
CREATE TRIGGER `pointclosedtrigger` AFTER UPDATE ON `points` 
FOR EACH ROW BEGIN 
IF NEW.is_open='3' 
THEN 
    INSERT into point_history (`idpoints`,`idmembers`,`action_time`,`action_type`) 
    VALUES (OLD.`idpoints`,NEW.`idmembers`,NOW(),'2'); 
END IF; 
END 
| 
delimiter ; 

如果不定义另一个分隔符比;那么你的声明将在第一;结束,它将不完整。