Re: Triggers on columns - Mailing list pgsql-hackers

From Itagaki Takahiro
Subject Re: Triggers on columns
Date
Msg-id 20090907193335.E701.52131E4D@oss.ntt.co.jp
Whole thread Raw
In response to Re: Triggers on columns  (Peter Eisentraut <peter_e@gmx.net>)
Responses Re: Triggers on columns
Re: Triggers on columns
Re: Triggers on columns
List pgsql-hackers
Peter Eisentraut <peter_e@gmx.net> wrote:

> Therefore, it cannot be completely unexpected if column triggers are
> called even if the column was not actually changed in a semantically
> significant way.

Ok, the attached patch implements standard-compliant version of
column trigger.

Retrieving modified columns is not so difficult as I expected.
It is in:
  rt_fetch(relinfo->ri_RangeTableIndex, estate->es_range_table)->modifiedCols
and the information are passed from caller to trigger routines.


However, to be honest, I think standard-compliant column trigger is
useless... I'm thinking additional extension for triggers -- if we
want to check modifications of actual values, it could be defined as:

    CREATE TRIGGER trig BEFORE UPDATE ON tbl FOR EACH ROW
        WHEN (NEW.col <> OLD.col) EXECUTE PROCEDURE trigger_func();

Regards,
---
ITAGAKI Takahiro
NTT Open Source Software Center


Attachment

pgsql-hackers by date:

Previous
From: Peter Eisentraut
Date:
Subject: Re: Rename StrNCpy to avoid conflictions on win32
Next
From: Magnus Hagander
Date:
Subject: Re: _WIN32_WINNT should be 0x0501 in win32.h