sql >> Database teknologi >  >> RDS >> PostgreSQL

Dynamisk revision af data med PostgreSQL trigger

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.




  1. Oracle flere felter i Vælg IN Parameter

  2. Forebyg samtidighed i Nodejs

  3. Python, Brew og MySQLdb

  4. SNMP OUTPUT OPTIONS - Hvordan får jeg kun OID-svarværdien?