我想出了一个办法。
只需为表 B 创建一个日志表。然后在“插入后”上创建一个触发器
在表 B 上,更新日志表。通过这样做,您将获得 New.item_id 和 New.item_quantity。然后在表B上创建另一个触发器“After Insert”,然后更新表A,
设置 item_quantity = item_quantity - New.item_quantity WHERE item_id = New.item_id
下面是我的原始代码,
DELIMITER //
创建触发器 purchase_log_insert
购买后插入
对于每一行
开始
插入 log_purchase(操作、purchase_id_new、item_id_new、purchase_quantity_new、时间戳)
VALUES ('插入', NEW.purchase_id, NEW.item_id, NEW.purchase_quantity, NOW());
结尾; //
分隔符;
定界符//
创建触发器 change_item
购买后插入
对于每一行
开始
更新项目
SET item_quantity = item_quantity - NEW.purchase_quantity WHERE item_id = NEW.item_id;
结尾; //
分隔符;