2013-12-16 45 views
0

我做錯了什麼?Mysql觸發器無法正常工作。爲什麼?

CREATE TRIGGER `Calc` AFTER INSERT on `test`.`bookings` FOR EACH ROW 
BEGIN 
UPDATE `test`.`article` AS `ST` 
SET `ST`.`stock` = SUM(`test`.`bookings`.`amount`) 
WHERE `ST`.`articlenr` = `test`.`bookings`.`NEW.article`; 
END 

的想法是,要計算 「股票」 的文章中,像插入後:

Amount: 1 Article: 123 

上表預訂。

這怎麼解決?

+1

什麼是* 「不工作」 *? – Kermit

+0

MySQL meldet:Dokumentation #1064 - 您的SQL語法錯誤;檢查對應於你的MySQL服務器版本的手冊,在第5行'.article'附近使用正確的語法 – HKK

回答

0
WHERE `ST`.`articlenr` = NEW.`article`; 

新的,它不是一個列

=(SELECT SUM(`test`.`bookings`.`amount`) FROM `test`.`bookings` GROUP BY article) 
+0

現在我得到這個錯誤! #1111 - 羣組功能的使用無效 – HKK

+0

如果您有聚合功能,請添加羣組。 – Mihai

+0

對不起,這是什麼? – HKK