2016-11-25 65 views
0

我想做一個簡單的觸發器,記錄更新事件。不過,我在「BEGIN ...」附近收到錯誤消息。如果我使用單引號,即「update_log中」和「客戶」,那麼,錯誤是「‘附近update_log中....’mySQL觸發器有什麼問題?

use tal; 
delimiter // 
CREATE TRIGGER onUpdate 
BEFORE UPDATE ON customer 
BEGIN 
INSERT INTO update_log VALUES(user(), 'An Udpdate operation against the customer table.', now()); 
END// 
delimiter ; 

爲什麼這個不行?

+1

缺少的每一行 – Mihai

+0

我想每一個更新日誌條目,在一個循環中沒有多少... –

+0

米哈伊是正確的:'CREATE TRIGGER的onUpdate BEFORE UPDATE ON客戶FOR EACH ROW BEGIN' –

回答

1

與甲骨文的MySQL需要爲每個ROW

delimiter // 
CREATE TRIGGER onUpdate 
BEFORE UPDATE ON customer 
FOR EACH ROW 
BEGIN 
INSERT INTO update_log VALUES(user(), 'An Udpdate operation against the customer table.', now()); 
END// 
delimiter ;