Trigger / Function: Getting column name of UPDATE - Mailing list pgsql-general

From Envex Developments
Subject Trigger / Function: Getting column name of UPDATE
Date
Msg-id 012d01c297b6$c0cbf7f0$04f65618@mattbh97ynudvv
Whole thread Raw
List pgsql-general
Hey there,

I have a table named "program1", which looks like:

id INT NOT NULL
u1 INT
u2 INT
u3 INT
ds INT

I'm trying to keep a consitent summary of this table through the use of a
trigger, and function written in PL/pgSQL.  The problem I'm having is when
the trigger is executed AFTER an UPDATE statement, there's no wayto
determine which uX column was updated.  I need to know if it's u1, u2, or
u3.

I've been trying for loops such as:

-------------------
FOR x IN 1 .. 3 LOOP
    IF OLD.ux NOT = NEW.ux THEN
        .... do this ...
    END IF;
END LOOP;
-------------------

Obviously, that doesn't work, and I just receive errors stating the column
ux doesn't exist.  Was wondering if anyone out there knew how to get the
column name which was updated through a trigger?  Anyway to pass it as an
argument to the function or anything?

Any help would be greatly appreciated.

Thanks,
Matt



pgsql-general by date:

Previous
From: "Shridhar Daithankar"
Date:
Subject: Re: FETCH a cursor inside a SELECT
Next
From: Tomas Berndtsson
Date:
Subject: message type 0x44 arrived from server while idle