Nezmínili jste svou verzi PostgreSQL, což je velmi důležité při psaní odpovědí na otázky, jako je tato.
Pokud používáte PostgreSQL 9.0 nebo novější (nebo můžete upgradovat), můžete použít tento přístup, jak dokumentuje Pavel:
http://okbob.blogspot.com /2009/10/dynamic-access-to-record-fields-in.html
Obecně, co chcete, je odkazovat na dynamicky pojmenované pole v proměnné PL/PgSQL typu záznamu, jako je 'NEW' nebo 'OLD'. To bylo historicky nepříjemně těžké a stále je to nepříjemné, ale je to přinejmenším možné ve verzi 9.0.
Vaše další alternativa – která může být jednodušší – je napsat vaše spouštěče auditu v plperlu, kde jsou odkazy na dynamická pole triviální.