Re: Why do OLD and NEW have special internal names?
| От | Tom Lane |
|---|---|
| Тема | Re: Why do OLD and NEW have special internal names? |
| Дата | |
| Msg-id | 9032.1258753157@sss.pgh.pa.us обсуждение исходный текст |
| Ответ на | Re: Why do OLD and NEW have special internal names? (Jan Wieck <JanWieck@Yahoo.com>) |
| Список | pgsql-hackers |
Jan Wieck <JanWieck@Yahoo.com> writes:
> On 11/20/2009 1:12 AM, Tom Lane wrote:
>> Jan Wieck <JanWieck@Yahoo.com> writes:
>>> But this brings up another point about the recent discussion of what
>>> RENAME is good for. Removing RENAME may conflict with using OLD/NEW in
>>> UPDATE ... RETURNING. No?
>>
>> Um ... not sure why. Specific example please?
> Inside a trigger proc, NEW is supposed to mean the new row for the table
> that fired the trigger. However, inside an UPDATE RETURNING for example,
> there is another set of NEW and OLD.
Uh, no there isn't ... and if there were I suppose it'd act much like
a query-local alias.
> Let's call the trigger call's NEW
> NEW_a and the UPDATE RETURNING NEW NEW_b. How would the developer
> specify something like
> INSERT ... RETURNING (NEW_a.value - NEW_b.value)?
They could use ALIAS to rename the trigger's NEW to something else.
regards, tom lane
В списке pgsql-hackers по дате отправления: