简体   繁体   English

MySQL触发器插入/更新

[英]MySQL Trigger Insert / Update

I hope you can help me with a trigger. 希望您能为我提供帮助。

I have two tables Books and Order_Details . 我有两个表 BooksOrder_Details I want the trigger to update InStock whenever a book from the table Books with the same OrderID is sold (Quantity) 每当销售表中具有相同OrderID Books (数量)时,我都希望触发器更新InStock

Can you help me finish the trigger 你能帮我完成触发吗
All i have now is the following: 我现在所拥有的是:

CREATE TRIGGER UpdateInStock 
    BEFORE insert ON Order_Details
    FOR EACH ROW 
BEGIN
    Update Books
    SET action = 'update',
        BookID = BookID,
    .....

Just call a simple UPDATE statement, to subtract the InStock value using New.Quantity . 只需调用一个简单的UPDATE语句,即可使用New.Quantity减去InStock值。

Check the following: 检查以下内容:

DELIMITER $$
DROP TRIGGER IF EXISTS UpdateInStock $$
CREATE TRIGGER UpdateInStock 
    BEFORE insert ON Order_Details
    FOR EACH ROW 
BEGIN
    Update Books
    SET InStock = InStock - New.QUANTITY 
    WHERE BookID = New.BookID;
END $$
DELIMITER ;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM