Probleme de creation de trigger
Salut à tous.
Je suis en ce moment sur un projet de gestion d'un camping avec une bdd Oracle.
Je souhaite créé des triggers pour avoir des ID en auto-increment. J'ai réussi à créer tous les triggers sauf sur une table.
Tous mes triggers sont de la même forme. Il n'y a que le nom qui change et les champs associés.
Voici le code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| CREATE sequence SEQ_FACTURE start with 1 increment by 1;
CREATE OR REPLACE TRIGGER AUTO_FACTURE
BEFORE INSERT ON TAMARIS.FACTURE FOR EACH ROW
WHEN (new.ID_FACTURE IS NULL)
DECLARE
la_clef number ;
BEGIN
SELECT SEQ_FACTURE.NEXTVAL
INTO la_clef FROM dual ;
:new.ID_FACTURE := la_clef ;
END ; |
Il me retourne une erreur de type :
Citation:
Parametre IN ou OUT absent dans l'index :: 1
quand j'utilise l'assistant de création sous Enterprise Manager.
Il me retourne une erreur de type :
Citation:
BEFORE INSERT ON TAMARIS.FACTURE FOR EACH ROW
ERREUR à la ligne 2 :
ORA-06552: PL/SQL: Compilation unit analysis terminated
ORA-06553: PLS-320: the declaration of the type of this expression is incomplete or malformed
quand j'utilise SQL*Plus Worksheet.
Est-ce que quelqu'un pourrait m'éclairer.
Merci d'avance.