Maison > base de données > tutoriel mysql > Découvrez comment créer et supprimer des déclencheurs dans MySQL

Découvrez comment créer et supprimer des déclencheurs dans MySQL

PHPz
Libérer: 2023-04-19 15:07:15
original
935 Les gens l'ont consulté

Un déclencheur dans MySQL est un type spécial de procédure stockée. Il s'agit d'un ensemble d'actions liées à la table qui peuvent être automatiquement exécutées lorsqu'une opération prédéfinie se produit, par exemple lorsqu'une opération DELETE, UPDATE ou INSERT est effectuée sur la table. Les déclencheurs peuvent fournir aux développeurs des options de programmation flexibles en définissant une syntaxe spéciale sur la table. Cet article explique comment créer et supprimer des déclencheurs dans MySQL.

Créer des déclencheurs MySQL

La création de déclencheurs dans MySQL nécessite l'utilisation de l'instruction CREATE TRIGGER. La syntaxe est la suivante :

CREATE TRIGGER trigger_name 
BEFORE|AFTER INSERT|UPDATE|DELETE ON table_name
FOR EACH ROW 
BEGIN 
   -- 触发器执行的操作
END;
Copier après la connexion

L'instruction CREATE TRIGGER doit spécifier les éléments suivants :

  • trigger_name Le nom du déclencheur.
  • AVANT | APRÈS Quand déclencher cette opération.
  • Opérations associées aux déclencheurs INSERT|UPDATE|DELETE.
  • table_name Le nom de la table sur laquelle l'opération de déclenchement doit être effectuée.
  • FOR EACH ROW spécifie le nombre de lignes que ce déclencheur exécute à chaque fois.
  • BEGIN et END définissent les instructions SQL à exécuter dans le déclencheur.

Par exemple, l'instruction CREATE TRIGGER suivante définit un déclencheur à exécuter lorsqu'une ligne de données est insérée dans la table utilisateur :

CREATE TRIGGER my_trigger 
BEFORE INSERT ON user
FOR EACH ROW
BEGIN
  INSERT INTO user_log (user_id, action) VALUES (NEW.id, 'inserted');
END;
Copier après la connexion

Ce déclencheur est exécuté avant chaque opération INSERT dans la table utilisateur et insérera l'ID de données et le type d'opération (inséré) inséré dans la table user_log.

Supprimer les déclencheurs MySQL

Dans MySQL, la suppression des déclencheurs nécessite l'utilisation de l'instruction DROP TRIGGER La syntaxe est la suivante :

DROP TRIGGER [IF EXISTS] trigger_name;
Copier après la connexion

L'instruction DROP TRIGGER doit spécifier les éléments suivants :

  • IF EXISTS Lorsque cette option est définie. , si vous essayez de supprimer Si le déclencheur n'existe pas, aucune erreur ne sera renvoyée.
  • trigger_name Le nom du déclencheur à supprimer.

Voici un exemple pratique, lorsque nous voulons supprimer le déclencheur my_trigger, nous pouvons utiliser l'instruction suivante :

DROP TRIGGER IF EXISTS my_trigger;
Copier après la connexion

Dans l'instruction DROP TRIGGER, nous avons utilisé l'option IF EXISTS pour nous assurer que le déclencheur que nous essayons de supprimer delete existe réellement. Si nous n'utilisons pas cette option, une erreur sera renvoyée lorsque nous tenterons de supprimer un déclencheur qui n'existe pas.

Résumé

Les déclencheurs dans MySQL sont un moyen configurable d'effectuer automatiquement des actions dans des circonstances spécifiques. Les déclencheurs peuvent s'exécuter sur des événements AVANT ou APRÈS, et différents déclencheurs peuvent être définis pour les opérations INSERT, UPDATE et DELETE. Pour créer un déclencheur MySQL, vous devez utiliser l'instruction CREATE TRIGGER et pour supprimer un déclencheur, vous devez utiliser l'instruction DROP TRIGGER. Si vous souhaitez en savoir plus sur les déclencheurs MySQL, veuillez vous référer à la documentation officielle de MySQL.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal