Specify a column without using its name - Mailing list pgsql-general

From Andrew Biagioni
Subject Specify a column without using its name
Date
Msg-id ZY4Z2X6Z183BOKMLSMDAJIFDHGOK.3fca7fad@Laptop
Whole thread Raw
Responses Re: Specify a column without using its name  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
Hi all!

I'm trying to write a general-purpose trigger that determines what fields have
changed during an UPDATE, but I'm running into a problem.

I'm trying to dynamically select the value from a field in "old" and "new" (the
old and new values for the changed row), but I can't figure out how to do so.

I tried something like,

  qry := ''SELECT '' || fieldname || '' AS curval FROM old'';
  FOR rec IN EXECUTE qry LOOP
    fieldval := rec.curval;
    EXIT;
  END LOOP;

but it doesn't work ("ERROR:  OLD used in non-rule query").

Any suggestions?

Thanks,

        Andrew




pgsql-general by date:

Previous
From: Arturo Pérez
Date:
Subject: Equivalent to DBMS_JOB
Next
From: Oleg Lebedev
Date:
Subject: Storing passwords