Un déclencheur définit un ensemble d'opérations qui sont exécutées lorsqu'une modification est apportée à une table. Les déclencheurs peuvent être utilisés pour des opérations telles que la validation des données d'entrée, la génération automatique d'une valeur pour une nouvelle ligne insérée, la lecture d'autres tables pour la résolution de références croisées, ou l'écriture de données dans d'autres tables à des fins de contrôle. Le plus souvent, les déclencheurs sont utilisés pour le contrôle de l'intégrité des données et pour l'application de règles propres à l'activité de l'entreprise.
La création d'un déclencheur s'effectue à l'aide de l'instruction SQL CREATE TRIGGER. Dans l'exemple qui suit, un déclencheur est créé pour appliquer une règle inhérente à la gestion des stocks. Le déclencheur provoque le passage d'une nouvelle commande lorsque le nombre d'articles disponibles tombe sous la barre des 10 % du stock initial.
CREATE TRIGGER reorder AFTER UPDATE OF on_hand, max_stocked ON parts REFERENCING NEW AS n_row FOR EACH ROW MODE DB2SQL WHEN (n_row.on_hand < 0.10 * n_row.max_stocked) BEGIN ATOMIC VALUES(issue_ship_request(n_row.max_stocked - n_row.on_hand, n_row.partno)); END
Les Extensions DB2 créent et utilisent des tables de gestion destinées au stockage des données image, audio et vidéo dans une base de données. (Pour plus de détails, reportez-vous à la section Tables de gestion.) Les Extensions utilisent des déclencheurs pour la réactualisation de ces tables en cas d'insertion, de mise à jour ou de suppression de données dans la base de données.