Comment etre sur qu'un trigger est declenché?
Bonjour,
Je suis très loin d'être un expert en BdD (tout juste débutant), je suis sur du dev .NET. Hors lorsque je dois supprimer un enregistrement référencé par d'autres tables, elles même référencées dans d'autres tables, ... etc donc grosso modo 10 à 100 enregistrement à effacer cela prend presque 3 secondes !!! On m'a donc conseillé de faire travailler la BdD plutôt que mon code en mettant des triggers BEFORE DELETE.
Ça ne marche pas. Voila pourquoi je sollicite votre aide: Comment puis je être sur que le trigger est déclenché? Et comme plusieurs sont en chaine, comment savoir sur lequel çà bloque?
Pour être peut être plus clair, voici le code d'un trigger, ils sont tous quasi identiques:
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
DROP TRIGGER IF EXISTS TRG_DEL_EX;
delimiter |
CREATE TRIGGER TRG_DEL_EX BEFORE DELETE
ON exercice
FOR EACH ROW BEGIN
DELETE FROM exercice_has_cible WHERE exercice_id = OLD.id;
DELETE FROM phase WHERE id = OLD.phase_aller_id;
DELETE FROM phase WHERE id = OLD.phase_retour_id;
END;
|
delimiter; |
ps: celui ci est le seul à avoir plus d'une instruction
Merci de votre aide.