gpt4 book ai didi

mysql - 将多个触发器连接到一个触发器中

转载 作者:行者123 更新时间:2023-11-30 01:34:19 26 4
gpt4 key购买 nike

我为一个表创建了三个触发器。

插入后触发一次,删除后触发一次,更新后最后触发一次。

我的问题是:有没有一种方法可以将所有这些触发器连接到一个触发器上?

这是我的三个触发器:

AFTER INSERT 触发器:

 DELIMITER //
CREATE TRIGGER `augmenter_quantite_Article` AFTER INSERT ON `LigneInterventaire`
FOR EACH ROW UPDATE Article
SET qteArt = qteArt + NEW.qteInv
WHERE codeArt = NEW.codeArt
//
DELIMITER ;

删除后触发器:

DELIMITER //
CREATE TRIGGER `diminuer_quantite_Article` AFTER DELETE ON `LigneInterventaire`
FOR EACH ROW UPDATE Article
SET qteArt = qteArt - OLD.qteInv
WHERE codeArt = OLD.codeArt
//
DELIMITER ;

更新后触发器:

DELIMITER //
CREATE TRIGGER `update_quantite_Article` AFTER UPDATE ON `LigneInterventaire`
FOR EACH ROW BEGIN
UPDATE Article
SET qteArt = qteArt - OLD.qteInv
WHERE codeArt = OLD.codeArt;
UPDATE Article
SET qteArt = qteArt + NEW.qteInv
WHERE codeArt = NEW.codeArt;
END
//
DELIMITER ;

最佳答案

“触发器是与表关联的命名数据库对象,当表发生特定事件时激活”(来自 mysql 文档)。每个触发器是为特定事件定义的。您无法创建一个针对不同事件触发的触发器。

关于mysql - 将多个触发器连接到一个触发器中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17112928/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com