getting OID from PL/PgSQL AFTER trigger

Поиск
Список
Период
Сортировка
От Vladimir Vukicevic
Тема getting OID from PL/PgSQL AFTER trigger
Дата
Msg-id E15pSoX-00043B-00@rain
обсуждение исходный текст
Список 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


В списке pgsql-sql по дате отправления:

Предыдущее
От: bulk@colonnello.org (Paolo Colonnello)
Дата:
Сообщение: Re: Simple Query HELP!!!
Следующее
От: Bhuvan A
Дата:
Сообщение: COPY COMMAND -- Hanging