Does anyone know how to write a trigger that would identify which columns
have actually changed in an update (and then log them to an archive).

I suspect that the function would look something like;

CREATE FUNCTION FIND_CHANGED_COLUMNS() RETURNS OPAQUE AS '
BEGIN

   -- FOR EACH COLUMN IN THE RECORD:
      -- IF ( NEW COLUMNx <> OLD COLUMNx)
         -- LOG THE RECORD PRIMARY KEY, COLUMN NAME, OLD VALUE

   RETURN NEW;
END;
' LANGUAGE 'plpgsql';

In other words
        - How might you parse, in general, old and new records to compare like
columns?
      - How can you find out the primary key of a record?

Thanks, Jack


---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
      subscribe-nomail command to [EMAIL PROTECTED] so that your
      message can get through to the mailing list cleanly

Reply via email to