2017-07-19 22 views
0

我有兩個表model_detail與列創建觸發器,同時增加新的行

`id``model_id``productName``Color``Available_Quantity` 

與列model_stock

`id``model_detail_id``entry_date``amount` 

model_detail_id是外鍵指向model_detail(id)表格我想更新model_detail表的Available_Quantity,無論何時新 model_stock加入,我已經試過這樣的事情

CREATE TRIGGER Update_model_stock AFTER INSERT ON model_stock 
FOR EACH ROW 
BEGIN 
UPDATE model_detail 
SET Available_Quantity= Available_Quantity + NEW.amount 
WHERE model_detail.id = NEW.model_stock.model_detail_id; 
END 

,但是當我添加一行到model_stock表我的錯誤是這樣的

SQL query: 
INSERT INTO `model_stock` (`id`, `model_detail_id`, `entry_date`, `amount`) 
VALUES (NULL, '2', '2017-07-11', '20') 

我收到錯誤消息:

MySQL說:文檔 #1054 - 未知列'NEW.model_stock.mo 「在 'del_detail_id where子句'

回答

1

你不能在NEW keword後添加的表名:

... 
WHERE model_detail.id = NEW.model_detail_id; 
...