Bonjour,
voici mon trigger que je crée qui me permet lors de l'ajout d'une nvelle ligne dans la table ligne_coms vérifie que la quantité commandé
n'est pas supérieur à la quantité en stock et affiche un message'stock insuffsant'
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
| create or replace trigger verifier_qte_com
before insert on ligne_coms
for each row
declare
qte integer;
stock integer;
erreur EXCEPTION;
begin
select qtestock into qte
from produits
where num_pro =:new.num_pro;
select qté_com into stock
from ligne_coms
where num_com =:new.num_com;
if stock >= qte then
RAISE erreur;
else
update produits
set qtestock =qtestock-stock;
end if;
EXCEPTION
WHEN erreur THEN
RAISE_application_error(-20002,'le stock est insuffisant');
end; |
il cree le trigger mais lorsque je veux inserer dans ma table linge_coms il m'affiche ce message:
1 2
| ERREUR à la ligne 1 :
ORA-04098: Déclencheur 'COURS1.VERIFIER_COMMANDE' non valide. Echec de la revalidation |
insert into ligne_coms( Num_com,Num_pro, Qté_com) values('103','100','20');
l'erreur peut se trouver où aidez moi
Partager