erreur sur trigger

erreur sur trigger - SQL/NoSQL - Programmation

Marsh Posté le 01-09-2006 à 11:41:53    

salut,
 
j'ai creer ce trigger

Code :
  1. create or replace trigger xtest1
  2. before insert on  test1
  3. for each row
  4. begin
  5. if :NEW.charcol='x' then
  6. test1.charcol:='vide';
  7. end if;
  8. end;


 
donc si il trouve x dans mon insert , il le remplace par vide.
Mais que je fais un insert

Code :
  1. insert into test1 (clé,charcol) values (1,'x')


 
ça fonctionne pas et j'ai ce message d'erreur

Citation :

Error starting at line 1 in command:
insert into test1 (clé,charcol) values (1,'x')
Error at Command Line:1 Column:12
Error report:
SQL Error: ORA-04098: trigger 'ZIP.XTEST1' is invalid and failed re-validation


 
voici le script de ma table

Code :
  1. create table test1 (clé integer,charcol varchar(5) not null);


 
je comprend pas pourquoi ?
est ce que quelqu'un pourrait m'eclairer ?
 
Merci

Reply

Marsh Posté le 01-09-2006 à 11:41:53   

Reply

Marsh Posté le 01-09-2006 à 13:14:23    

create or replace trigger xtest1 before insert on  test1
for each row
begin
if :NEW.charcol='x'  
    :NEW.charcol:='vide';
end if;
end;

Reply

Marsh Posté le 01-09-2006 à 14:46:58    

merci
il fonctionne mais le truc
j'aurai aimé savoir si il etait possible de mettre une contrainte dans mon trigger pour qu'il prenne tous les champs de la table qui on la contrainte not null
pour que je fasse quelquechose ds le genre
:NEW.*

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed