Harald Fuchs <hf118@protecting.net> writes:
> Tom Lane <tgl@sss.pgh.pa.us> writes:
>> I'm not very clear on
>> how that works myself --- in particular, one would think it important to
>> be able to work with corresponding pairs of OLD and NEW rows, which
>> would be painful with a table-like abstraction.
> Why? If the underlying table has a primary key, finding corresponding
> pairs is trivial; if there isn't, it's impossible.
Exactly. Nonetheless, the correspondence exists --- the UPDATE
definitely updated some particular row of the OLD set into some
particular one of the NEW set. If the trigger API makes it impossible
to reconstruct the matchup, the API is broken.
Even if there is a primary key, the API should not force you to rely
on that; what of an UPDATE that changes the primary key?
regards, tom lane