Re: how do i create trigger with params? - Mailing list pgsql-general

From Richard Huxton
Subject Re: how do i create trigger with params?
Date
Msg-id 005e01c0aa6c$9d8801a0$1001a8c0@archonet.com
Whole thread Raw
In response to how do i create trigger with params?  (hubert depesz lubaczewski <depesz@depesz.pl>)
List pgsql-general
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


pgsql-general by date:

Previous
From: Chris Humphries
Date:
Subject: Re: Anyone can create tables!
Next
From: "Richard Huxton"
Date:
Subject: Re: big int