CREATE Trigger Syntaxe IF THEN END IF;
big-66
Messages postés
7
Statut
Membre
-
Mutating -
Mutating -
Bonjour,
Je suis sous mysql 5.1.36 et j'arrive pas a crée un trigger en mettant la condition if dedans voici un exemple de la syntaxe qui veut pas marcher :
delimiter |
CREATE TRIGGER trg_name AFTER INSERT ON tbl_name
FOR EACH ROW BEGIN
IF id = 1 then
insert into tabl_name2 SET at2 = NEW.at1;
end if ;
END
|
Je suis sous mysql 5.1.36 et j'arrive pas a crée un trigger en mettant la condition if dedans voici un exemple de la syntaxe qui veut pas marcher :
delimiter |
CREATE TRIGGER trg_name AFTER INSERT ON tbl_name
FOR EACH ROW BEGIN
IF id = 1 then
insert into tabl_name2 SET at2 = NEW.at1;
end if ;
END
|
A voir également:
- CREATE Trigger Syntaxe IF THEN END IF;
- Exemple planning 1 week-end sur 3 - Télécharger - Outils professionnels
- If exist ✓ - Forum Autoit / batch
- End clothing avis - Forum Consommation & Internet
- Procédure de retour ✓ - Forum Consommation & Internet
- Planning pour 3 salariés avec 1 week-end sur 3 ✓ - Forum Excel
1 réponse
Tu es sûr de pouvoir faire un insert dans une table pendant le trigger déclenché par un insert dans cette même table ?
la décomposition de l'insert est :
1- début de l'insertion
2- début trigger avant
3- corps trigger avant
4- fin trigger avant
5- insertion ligne dans la table
6- début trigger après
7- corps trigger après
8- fin trigger après
9- fin de l'insertion
si tu envoies un insert pendant l'étape 3, tu te retrouves avec un process récursif sans condition d'arrêt :-(... jamais aucune étape 4 ne sera exécutée;
la décomposition de l'insert est :
1- début de l'insertion
2- début trigger avant
3- corps trigger avant
4- fin trigger avant
5- insertion ligne dans la table
6- début trigger après
7- corps trigger après
8- fin trigger après
9- fin de l'insertion
si tu envoies un insert pendant l'étape 3, tu te retrouves avec un process récursif sans condition d'arrêt :-(... jamais aucune étape 4 ne sera exécutée;