2014-11-05 151 views
0

我必須立即乘以使用觸發器兩列的值 我的表會像如何使用觸發器乘以兩列值?

+================================================= 
energy   power  total 
5    5  null 
8    4  null 
9    6  null 

我想總=能源*權力的;

CREATE trigger sum BEFORE INSERT on sample 
FOR EACH ROW 
BEGIN 
SET NEW.total=NEW.energy*NEW.power 
END ; 

我在第5行

+0

第5行中的錯誤。丟失分號。 – Riad 2014-11-05 10:36:43

回答

2

錯誤嘗試約觸發語法

DELIMITER ;; 
CREATE TRIGGER multiplier BEFORE INSERT ON sample 
FOR EACH ROW 
BEGIN 
SET new.total = new.energy * new.power; 
END ;; 
DELIMITER ; 

的更多信息和在trigger syntax在MySQL手冊使用DELIMITER的。

+0

我在分隔符中得到了語法錯誤,我正在使用版本mysql 5.6.17是重要的..... – vidhyavarshini 2014-11-05 10:57:57

+0

對我來說它適用於5.3.3,沒有你的版本.. – Olli 2014-11-05 11:17:40

+0

@vidhyavarshini:使用/ /作爲分隔符。 – Riad 2014-11-05 17:28:00

2

使用下面的腳本:

CREATE trigger sum BEFORE INSERT on sample 

FOR EACH ROW 
SET NEW.total=NEW.energy*NEW.power ; 

取出BeginEnd標籤,它爲我工作。