Bonjour
Je voudrais insérer automatiquement une valeur auto-incrémentée dans une table grace a un trigger. Au 1er déclenchement du trigger, ma table est vide, je veux donc qu'il fasse :
si rang is null alors rang =0 puis rang=rang+1.
(NB:rang ne peut etre null)
Voilà mon code :
L'erreur générée est
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 CREATE OR REPLACE TRIGGER INCR_RANG BEFORE INSERT ON NOM_TABLE FOR EACH ROW BEGIN IF :new.rang is null THEN :new.rang:=0; END IF; SELECT MAX(rang)+1 INTO :NEW.rang FROM NOM_TABLE; END;
ORA-01400: impossible d'insérer NULL dans ("NOM_TABLE"."RANG")
Qqun peut-il m'aider ?
Merci
Partager