Sobes.tech
Junior

Qu'est-ce qu'un déclencheur?

sobes.tech IA

Réponse de l'IA

Un déclencheur est une procédure stockée spéciale dans la base de données, qui s'exécute automatiquement lorsqu'un événement spécifique se produit.

Les événements qui déclenchent généralement les déclencheurs incluent :

  • INSERT : ajout de nouvelles lignes dans la table.
  • UPDATE : modification de lignes existantes dans la table.
  • DELETE : suppression de lignes de la table.

Les déclencheurs peuvent être activés à différents moments par rapport à l'événement :

  • BEFORE : avant l'exécution de l'événement.
  • AFTER : après l'exécution de l'événement.
  • INSTEAD OF : à la place de l'exécution de l'événement (souvent utilisé avec des vues).

Exemples d'utilisation des déclencheurs :

  1. Maintenir l'intégrité des données : Vérification ou modification automatique des données lors de l'insertion/de la mise à jour.
  2. Audit : Enregistrement des informations sur les modifications de données dans une table de logs.
  3. Synchronisation des données : Mise à jour automatique des tables liées.
  4. Exécution de règles métier complexes : Initiation d'actions supplémentaires sous certaines conditions.

Les déclencheurs sont définis au niveau de la table et peuvent faire référence aux anciennes et nouvelles valeurs de la ligne modifiée.

-- Exemple de syntaxe (SQL)
CREATE TRIGGER audit_log
AFTER INSERT ON users
FOR EACH ROW
BEGIN
    INSERT INTO audit (user_id, action, timestamp)
    VALUES (NEW.id, 'insert', NOW());
END;

Il est important d'utiliser les déclencheurs avec précaution, car ils peuvent compliquer le débogage et affecter la performance de la base de données.