Re: Triggers

From: The Magnet <art_at_unsu.com>
Date: Sat, 7 Aug 2010 15:57:38 -0700 (PDT)
Message-ID: <103df164-5527-41e9-be0d-3cddc28284a4_at_w30g2000yqw.googlegroups.com>



On Aug 7, 5:30 pm, The Magnet <a..._at_unsu.com> wrote:
> Is there really any good way to track the changed columns in a trigger
> on an update?
>
> Say I have a table of 100 columns and I am doing some history
> recording into another table for 50 of those columns.  Putting 50 IF
> statements is lame.  Is there a better way to do it?
>
> Maybe something similar to
> DECODE(email,:NEW.email, :NEW.email, :OLD.email)

I was thinking and I guess I should be more explicit:

On an UPDATE trigger, which column values are :NEW and which are :OLD. If I update column A and need the values for column B & C for something else, do I reference them as :NEW or :OLD (this is a BEFORE trigger).

So, UPDATE tablex SET a = 'ABC';
Then, UPDATE history SET a=:NEW.a, b=????, c=????

Now, columns B & C, are they :NEW or :OLD? Do I need to test each column I need to get the actual value? Received on Sat Aug 07 2010 - 17:57:38 CDT

Original text of this message