bonjour!
voici un trigger qui permet de vérifier le département de chaque distributeur Avant ajout du client en Table:
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
create or replace 
TRIGGER  Insrt_dist
BEFORE INSERT on DISTRIBUTEURS
for each row
declare
dept_exception EXCEPTION;
begin
 
--CONTRAINT SUR LE DEPARTEMENT
IF :NEW.DEPARTEMENT!='RHONE' THEN
RAISE dept_exception;
END IF;
 
EXCEPTION
WHEN dept_exception THEN 
RAISE_APPLICATION_ERROR(-20501, 'insertion impossible : le distributeur n"habite pas au département du rhone ');
 
END;
la procédure d'ajout est :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
create or replace 
procedure ajout_distributeur(id integer,Comune varchar2,ville varchar2,num integer,codeP integer,DEPARTEMENT varchar2)is
Begin
insert into distributeurs VALUES (id,Comune,ville,num,codeP,DEPARTEMENT);
dbms_output.put_line('distributeur ajouter !');
end;
son exécution me donne des erreurs comme suit

Erreur commençant à la ligne 1 de la commande :
Begin
ajout_distributeur(8,'Aigueperse','LYON',0876543218,69800 ,'AIN');
End;
Rapport d'erreur :
ORA-20501: insertion impossible : le distributeur n"habite pas au departement du rhone
ORA-06512: à "M132.INSRT_DIST", ligne 15
ORA-04088: erreur lors d'exécution du déclencheur 'M132.INSRT_DIST'
ORA-06512: à "M132.AJOUT_DISTRIBUTEUR", ligne 3
ORA-06512: à ligne 2
Quelqu'un pourrait m'aider svp!! je suis débutante
merci d'avance