Bonjour, je réalise actuellement un TP de base de données avec ORACLE et je dois réaliser un trigger qui vérifie que le nombre de plats commandés n'est pas supérieur au nombre de personnes.
1 table commande avec idcommande (cp) et nbpersonne
1 association composer avec idcommande(cp) et idplat(cp)
1 table plats avec idplat (cp)
le trigger se crée mais une fois l’exécution ERREUR
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 create or replace trigger verifPers before insert or update on composer for each row declare qte composer.quantite%type; nbpers commandes.nbpersonnes%type; begin select c.quantite,co.nbpersonnes into qte, nbpers from composer c, commandes co where c.idcommande = co.idcommande and co.idcommande = :old.idcommande; if (qte > nbpers) then raise_application_error(-20500,'ERREUR'); end if; end;
Partager