我有3张桌子 -
输入
来源
目标
现在我想在输入表上创建一个AFTER INSERT 触发器。
例如 如果我在 值中插入100 &表输入
中的 ID 中的2然后应触发一个触发器,在 S_Qty 中增加100,其中 S_ID = ID(即2)来自表来源
同时在 D_Qty 中减少100,其中 D_ID = ID(即2)来自表目的地
PS - 假设我在来源和目的地表中存储了一些值
我使用了以下查询 -
DELIMITER //
CREATE TRIGGER update_input
AFTER INSERT ON input
FOR EACH ROW
BEGIN
DECLARE I,V,D,S INT;
SELECT value INTO V FROM input;
SELECT ID INTO I FROM input;
SELECT D_Qty INTO D FROM destination WHERE D_ID = I;
UPDATE destination
SET D_Qty = D + V WHERE D_ID = I;
SELECT S_Qty INTO S FROM source WHERE S_ID = I;
UPDATE source
SET S_Qty = S - V WHERE S_ID = I;
DELETE FROM input;
END; //
DELIMITER ;