From: "hubert depesz lubaczewski" <depesz@depesz.pl>
> i would like to create c-type trigger which is used with params.
> so i created function:
> CREATE function dfti(text) RETURNS opaque as
> '/home/users/pgdba/work/lib/dfti.so' language 'C';
> o.k. created
> byt when i try to:
> CREATE trigger dfti_trg after INSERT or UPDATE or DELETE on newstexts for
each
> row execute procedure dfti ('newstexts');
> i get:
> psql:create.sql:9: ERROR: CreateTrigger: function dfti() does not exist
>
> which is of course true. function dfti() doesn't exist, but i wanted to
use
> dfti(text)!
I'll quote Stephen Szabo from a couple of days ago (check archive for full
details)
>
> Right, because triggers take arguments differently. Trigger functions
> must return opaque and take no arguments. Arguments passed at create
> trigger time are passed in via TG_ARGV[] (number in TG_NARGS i believe)
>
I think there's probably an example of this in contrib/noupdate.
- Richard Huxton