Du nævnte ikke din version af PostgreSQL, hvilket er meget vigtigt, når du skriver svar på spørgsmål som dette.
Hvis du kører PostgreSQL 9.0 eller nyere (eller er i stand til at opgradere), kan du bruge denne fremgangsmåde som dokumenteret af Pavel:
http://okbob.blogspot.com /2009/10/dynamic-access-to-record-fields-in.html
Generelt er det, du ønsker, at referere til et dynamisk navngivet felt i en record-type PL/PgSQL-variabel som 'NEW' eller 'OLD'. Dette har historisk set været irriterende hårdt og er stadig akavet, men er i det mindste muligt i 9.0.
Dit andet alternativ - som måske er enklere - er at skrive dine revisionsudløsere i plperlu, hvor dynamiske feltreferencer er trivielle.