From: | Vladimir Vukicevic <vladimir(at)ximian(dot)com> |
---|---|
To: | pgsql-sql(at)postgresql(dot)org |
Subject: | getting OID from PL/PgSQL AFTER trigger |
Date: | 2001-10-05 11:06:45 |
Message-ID: | E15pSoX-00043B-00@rain |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Howdy,
I'm trying to get the OID of the NEW/OLD rows in an AFTER trigger
implemented in PL/PgSQL. Unfortunately, those end up as records in
the trigger, and I can't just use NEW.oid. Is there any way to do
this? I could do it using a trigger written in C, but I'd rather not
have to carry around a C .so just for this.
Note that I effectively have no knowledge of the format of the record
that's passed in new/old, so I can't either add a sequence or use some
already existing primary key to identify the row uniquely. One quick
hack is to "INSERT INTO dummy VALUES (NULL);" and then GET DIAGNOSTICS
z = RESULT_OID; and then use z - 1, but that will get me into lots of
trouble with multiple cilents accessing the database. :-)
For the time being, I'm going to implement the trigger in C, but I'm
open to suggestions on how to implement this in straight PL/PgSQL.
Thanks in advance,
- Vlad
From | Date | Subject | |
---|---|---|---|
Next Message | Haller Christoph | 2001-10-05 11:48:57 | Re: challenging query |
Previous Message | Janning Vygen | 2001-10-05 10:39:40 | Problem with n to n relation |