postgresql でデータベースの監査トリガーを作成しようとしています。この監査ログには、日付、時刻、ユーザーなどだけでなく、更新された特定の値も記録する必要があります。私の課題は、特に要求された更新アクションの値と、以前の値から継承された値を区別することです。
例えば:
CREATE TABLE dummy_table (id SERIAL NOT NULL PRIMARY KEY, a INTEGER, b INTEGER);
INSERT INTO dummy_table (a,b) values (1,2);
UPDATE dummy_table SET (a) = (1) WHERE id = 1;
この更新では、OLD レコードと NEW レコードの両方に が含まれます(a,b) = (1,2)
。しかし、a
実際には更新の一部でした。トリガーでこの違いを検出することは可能ですか?