2011-01-07 60 views
0
DELIMITER $$ 
CREATE TRIGGER stock_empty AFTER UPDATE on products 
    FOR EACH ROW 
    DELETE FROM products WHERE stock <=0; 
    END$$ 

我試圖讓我的產品表在每次UPDATE語句後檢查自己,並刪除具有0或負數股票計數的行。我可以設法達到這個目標,但它不起作用。MYSQL觸發器問題 - 非常容易

感謝所有幫助

+1

你確定要在產品表「盤點」? – 2011-01-07 07:33:37

+0

是的這是不是一個大項目或任何東西,我只是搞亂與mysql – gkaykck 2011-01-07 07:35:53

回答

2

如果就這麼簡單,爲什麼你不自己解決呢?

DELIMITER || 
CREATE TRIGGER stock_empty AFTER UPDATE on products 
FOR EACH ROW BEGIN 
DELETE FROM products WHERE stock <=0; 
END || 

[編輯]

這是應該的語法如何正確的樣子,但是有一兩件事:

存儲函數或觸發器不能 修改已被使用 表(用於讀取或寫入)由 聲明調用的函數或 觸發器。

來源:http://dev.mysql.com/doc/refman/5.5/en/stored-program-restrictions.html