Bonjour,
Voila nous avons un probleme de trigger dont voici le code :
l'erreur se situe sur cette ligne :
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 CREATE OR REPLACE TRIGGER verif_saisie BEFORE INSERT OR UPDATE ON gardien_heure_jour FOR EACH ROW declare temp varchar2(10); test varchar2(10); BEGIN IF :NEW.heure = '10h' then temp := '9h' end if; IF :NEW.heure<>'8h' then select id_parcelle into test from gardien_heure_jour where code=:NEW.code and jour=:NEW.jour and heure=temp; IF :NEW.id_parcelle = test THEN raise_application_error(-20007, 'La parcelle doit etre differente de la parcelle precédente'); end if; end if;ensuite,voici l'erreur oracle :
Code : Sélectionner tout - Visualiser dans une fenêtre à part IF :NEW.heure = '10h' then temp := '9h' end if;Merci d'avance pour votre aide !!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 ERROR at line 8: PLS-00103: Symbole "END" rencontré à la place d'un des symboles suivants : * & = - + ; < / > at in is mod remainder not rem <> or != or ~= >= <= <> and or like LIKE2_ LIKE4_ LIKEC_ between || multiset member SUBMULTISET_ Symbole ";" a été substitué à "END" pour continuer. 6. test varchar2(10); 7. BEGIN 8. IF 9. :NEW.heure = '10h' then temp := '9h' 10. end if;
Partager