From: Frank Bax <fbax@sympatico.ca>
To: pgsql-sql@postgresql.org
Subject: Re: how to tell if column set on update
Date: Wed, 22 Jul 2009 07:42:09 -0400
Message-ID: <4A66FB11.1000302@sympatico.ca> (raw)
In-Reply-To: <137458.25689.qm@web54304.mail.re2.yahoo.com>
References: <137458.25689.qm@web54304.mail.re2.yahoo.com>
chester c young wrote:
>> Le 20/07/09 15:19, chester c young a écrit :
>>> within a trigger need to know if the UPDATE statement
>> set a column. the column might be set to the old value
>> or a different value.
>>> (want to make sure the app is sending all necessary
>> values)
>>> thanks
>>>
>> If the column to test is known -- e.g. column MyCol --,
>> NEW.MyCol and
>> OLD.MyCol -- respectively value of MyCol after UPDATE and
>> value of MyCol
>> before UPDATE -- can be compared.
>
> for example,
> create table t1( c1 int, c2 int );
> insert into t1 values( 1, 2 );
>
> 1) update t1 set c1=4 where c1=1;
> 2) update t1 set c1=4, c2=2 where c1=1;
>
> each update results in the same row, but in the second update c2 was actually set.
> a trigger on the update - how do we know if c2 has been actually set or not?
You cannot do that. You can only detect that a value has changed.
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: fbax@sympatico.ca
Subject: Re: how to tell if column set on update
In-Reply-To: <4A66FB11.1000302@sympatico.ca>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox