bonjour,

Je souhaite gérer l'inscription de groupe à des festivals, donc avant l'insertion de la table engager je verifie qu'il reste de la place dans le festival ( grace à un booleen dans la table) festival
Je voulais le faire via un trigger comme suit :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
create trigger avt_engageArtiste
before insert on engager
for each row
begin
declare temp boolean default O;
declare plus_de_place condition for SQLSTATE  '99001';
declare exit handler for plus_de_place set @error = 'Il n''y a plus de place!';
select placeArtiste into temp from tabFestival
        where idFestival=new.FK_idFestival;
if (placeArtiste=1) then
  SIGNAL plus_de_place;
end if;
end;
Or bien que la documentation existe l'instruction signal n'existe pas dans les versions actuelles de mysql.
Quelle solution vous mettez en place pour gérer ce genre de contrainte ?
Merci