Probleme Trigger Oracle 9i
Bonjour,
Je rencontre un probleme lors de l'execution d'un trigger.
J'obtiens toujours ce message d'erreur :
Error starting at line 1 in command:
INSERT INTO TRANSPLAN.ESSAI_HIST(NOM, CLE) VALUES ('vghj',88888)
Error report:
SQL Error: ORA-01722: Nombre non valide
ORA-06512: à "TRANSPLAN.TRIG_ESSAI", ligne 2
ORA-04088: erreur lors d'exécution du déclencheur 'TRANSPLAN.TRIG_ESSAI'
Voici le code du trigger :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| CREATE OR REPLACE
TRIGGER TRIG_ESSAI BEFORE INSERT ON ESSAI_HIST
FOR EACH ROW
BEGIN
MERGE into TRANSPLAN.ESSAI v
using ( select :new.CLE CLE from dual ) t1
on ( t1.CLE = v.CLE)
when matched
then update set
NOM = :new.NOM
when not matched
then insert values (
:new.CLE,
:new.NOM
);
end; |
Et voici les deux tables en questions :
Code:
1 2 3 4 5
| CREATE TABLE "TRANSPLAN"."ESSAI"
( "CLE" NUMBER(15,0) NOT NULL ENABLE,
"NOM" VARCHAR2(10 BYTE),
CONSTRAINT "ESSAI_PK" PRIMARY KEY ("CLE") ENABLE
) ; |
et
Code:
1 2 3 4
| CREATE TABLE "TRANSPLAN"."ESSAI_HIST"
( "CLE" NUMBER(15,0) NOT NULL ENABLE,
"NOM" VARCHAR2(10 BYTE)
) ; |
Sur internet j'ai rien trouvé. Je suis un peu désespéré.
Merci de votre aide.