Maison > Article > base de données > [MySQL 14] Déclencheur après et avant
after termine d'abord l'ajout, la suppression et la modification des données, puis se déclenche. L'instruction déclenchée est postérieure à l'opération d'ajout, de suppression et de modification surveillée, et ne peut pas affecter les opérations d'ajout, de suppression et de modification précédentes ; , l'enregistrement de la commande est inséré en premier, puis la quantité du produit est mise à jour ;
avant de terminer le déclencheur, puis d'ajouter, de supprimer ou de modifier l'instruction déclenchée précède l'ajout, la suppression ou la modification surveillée. modification, nous avons donc la possibilité de juger et de modifier l'opération à venir ;
Cas :
Tableau du produit g Le nombre de juzi gagnants n'est que de 20, mais si plus de 20 sont ajoutés à la commande o, comment pour le résoudre à ce moment-là ?
#创建触发器test4 CREATE TRIGGER test4 AFTER INSERT ON `ord` FOR EACH ROW BEGIN UPDATE goods SET num= num - new.much WHERE goods_id = new.gid; END$$
Déclencher l'utilisation avant :
Déclencher d'abord, puis ajouter, supprimer ou modifier après jugement et traitement. La quantité maximale de la commande est modifiée en fonction de l'inventaire. Bien sûr, je viens de fixer une valeur. En fait, vous pouvez utiliser des instructions pour obtenir des valeurs d'inventaire dynamiques.
#创建触发器test5 CREATE TRIGGER test5 BEFORE INSERT ON `ord` FOR EACH ROW BEGIN IF new.much >26 THEN SET new.much = 26; END IF; UPDATE goods SET num= num - new.much WHERE goods_id = new.gid; END$$
Ce qui précède est le contenu du déclencheur [MySQL 14] après et avant. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php. .cn) !