[PostgreSQL] trigger qui ne passe pas les param à la fonction

trigger qui ne passe pas les param à la fonction [PostgreSQL] - SQL/NoSQL - Programmation

Marsh Posté le 24-06-2005 à 11:03:01    

Salut,
 
en résumé j'ai des triggers qui me permettent de tracer ce qui est modifier sur la base, à chaque update/creation d'un enregistrement.
 
les triggers sont de la forme :
 
create trigger TR_TABLE1 before insert or update on TABLE1
  for each ROW
  execute procedure PR_UPDATE('TABLE1');
 
et la procedure devrai etre de la forme :
 
create or replace function PR_UPDATE(varchar) returns trigger as  
'
    BEGIN
        (...)
        insert into MODIFICATION(MO_NUMERO, MO_TABLE, MO_USER, MO_TIME)
 values (nextval(SEQ_MODIFICATION), $1, current_user, current_timestamp);
 RETURN NEW;
    END;
'  
language 'plpgsql';
 
le probleme vient dans le fait que les triggers ne trouve pas la fonction, il cherche PR_UPDATE() et non pas PR_UPDATE(varchar)
je dois donc avoir un probleme lors de mon passage de parametre, mais ne connaissant pas tres bien postgresql je vois pas où est le pb  :sweat:  
si je cree une procedure PR_UPDATE() la base cree les triggers mais je perd le parametre...
 

Reply

Marsh Posté le 24-06-2005 à 11:03:01   

Reply

Marsh Posté le 24-06-2005 à 15:33:13    

tu as quelle version de PostGre ? juste comme ca, je suis pas spécialiste postgre et j'ai pas codé de triggers ni de fonctions depuis une paye, mais ca peut jouer il me semble, les versions 'vieilles' n'implémentent pas les proc/triggers de manière très pointue..
sinon je te suggère http://traduc.postgresqlfr.org/pgsql-8.0.3-fr/

Reply

Marsh Posté le 24-06-2005 à 15:58:53    

donc g la 8 et sur la doc les exemples ne passent pas de param (j'avais fouillé un minimum dans www.postgrsql.org avant de poster)
edit : précision => 8.0.3


Message édité par jan san kar le 24-06-2005 à 16:00:05
Reply

Sujets relatifs:

Leave a Replay

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