[TRIGGER] Returning values from BEFORE UPDATE trigger, without using them

From: Torsten Zühlsdorff <foo(at)meisterderspiele(dot)de>
To: pgsql-sql(at)postgresql(dot)org
Subject: [TRIGGER] Returning values from BEFORE UPDATE trigger, without using them
Date: 2010-07-23 12:53:11
Message-ID: i2c3bp$v3l$1@news.eternal-september.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Hello,

i have a non-trival problem and i do not believe that it is solvable.

I have defined an BEFORE UPDATE trigger. The trigger catch every update,
change some columns of the new row, make an insert of the new row and
returns null to abort the update.
All fine till here :)

Now the problem: if i do an UPDATE table [..] RETURNING * it returns
always null. This is correct behavior, because the UPDATE is canceld by
the trigger which returns null, so the updated data is "null".
But i want to get the new data inserted by the trigger without a new
select. Is there a possibility to get the inserted data or do i have to
do a select after the update?

Greetings,
Torsten
--
http://www.dddbl.de - ein Datenbank-Layer, der die Arbeit mit 8
verschiedenen Datenbanksystemen abstrahiert,
Queries von Applikationen trennt und automatisch die Query-Ergebnisse
auswerten kann.

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Andreas 2010-07-24 04:05:57 howto delete using a join ?
Previous Message Richard Huxton 2010-07-22 19:24:46 Re: Aggregates (last/first) not behaving