2013-04-30 108 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 ; 

如果不定義另一個分隔符比;那麼你的聲明將在第一;結束,它將不完整。