Your SlideShare is downloading. ×
Introduction aux Triggers avec MySQL
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Introduction aux Triggers avec MySQL

7,647
views

Published on


0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
7,647
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
67
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Les triggers avec MySQL Par Joseph ROUFF
  • 2. Définition “ Un déclencheur est un objet de base de données nommé, qui est associé à une table et qui s'active lorsqu'un événement particulier survient dans une table ”
  • 3. Définition - 2 Un Trigger est un bloc d'instructions SQL : Il est rattaché à une seule table Il réagit à 3 événements : INSERT, UPDATE, DELETE Il s'exécute soit avant soit après un des ces événements L'accession aux données modifiées via les événements est possible avec les mots-clés New. nom_colonne ou OLD.nom_colonne Une table peut avoir 6 triggers Maximum
  • 4. Création d'un Trigger CREATE TRIGGER nom_trigger(1) { BEFORE | AFTER } { INSERT | UPDATE | DELETE } ON nom_table(2) FOR EACH ROW requête_SQL(3) 1. Nom donné au Trigger, il lui sert d'identifiant 2. Nom de la table pour laquelle le trigger est affecté 3. La requête SQL à exécuter lors de l'activation du Trigger
  • 5. Quand doit-on les utiliser ? Les triggers sont souvent utilisés pour : Créer des rapports d'audit sur l'utilisation de la BDD Palier aux manques de certains moteurs de stockage (Intégrité référentielle) Accroître la sécurité des données
  • 6. Création d'une « poubelle » Objectif : Créer un trigger interceptant toutes les données supprimées pour les mettre dans une table « poubelle » afin d'éviter les suppression accidentelles. Importer la base de données « world » Créer la table deleted_city Affecter à la table City le trigger nommé city_AD : Utiliser l'événement DELETE Le trigger sera invoqué ... après ... l'instruction DELETE
  • 7. Création d'un système d'audit Objectif : Créer un trigger permettant de compter le nombre de requêtes d'ajout, de mise à jour et de suppression effectués par jour Créer la table audit_city Affecter à la table City les triggers suivant: audit_city_AI (Evén. : INSERT, PE : AFTER) audit_city_AD (Evén. : DELETE, PE : AFTER) audit_city_AU (Evén. : UPDATE, PE : AFTER)
  • 8. Emulation Intégrité Référentielle Objectif : Créer un trigger permettant de vérifier si avant d'ajouter une ville, elle fait référence à un pays existant dans la table Country Affecter à la table City le trigger verif_country_BI (Evén. : INSERT, PE : BEFORE) Adopter la notation pour un trigger comportant plusieurs instructions SQL