Bonjour à tous,
j'ai un soucis pour créer un trigger, on me remonte une erreur sur la boucle pourtant la syntaxe est bonne...
Sur la ligne "get_info: loop"
Merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 DELIMITER $$ CREATE TRIGGER DELETE_EXP BEFORE DELETE ON t_exposant_exp FOR EACH ROW BEGIN DECLARE oeuvre_id VARCHAR(100); DECLARE curseur CURSOR FOR SELECT oeu.oeu_id FROM t_exposant_exp exp INNER JOIN t_compte_cpt cpt on cpt.org_id = exp.org_id LEFT JOIN t_presente_pre pre on pre.exp_id = exp.exp_id LEFT JOIN t_oeuvre_oeu oeu on oeu.oeu_id = pre.oeu_id LEFT JOIN t_catalogue_cat cat on cat.exp_id = exp.exp_id where exp.exp_id = OLD.exp_id; OPEN curseur; get_info: LOOP FETCH curseur INTO oeuvre_id; IF oeuvre_id NOT IN (oeu_id FROM Oeu_collectives_or_not) then DELETE FROM `t_oeuvre_oeu` WHERE `oeu_id` = oeuvre_id; DELETE FROM `t_presente_pre` WHERE `oeu_id`= oeuvre_id; END IF; END LOOP get_info; DELETE FROM `t_catalogue_cat` WHERE `exp_id`=OLD.exp_id; END; $$ DELIMITER ;
Partager