pg.ddx.io pgsql-sql@postgresql.org mailing list archivehelp / color / mirror / Atom feed
From: Richard Huxton <dev@archonet.com>
To: David Garamond <davidgaramond@gmail.com>
Cc: pgsql-sql <pgsql-sql@postgresql.org>
Subject: Re: autoupdating mtime column
Date: Fri, 04 Aug 2006 17:05:50 +0100
Message-ID: <44D3705E.9050304@archonet.com> (raw)
In-Reply-To: <7c33d060608040810j7f722af3g6a3185bf1cb990d6@mail.gmail.com>
References: <7c33d060608040516n799af906sf74e1c645a47caff@mail.gmail.com>
<44D34242.6000901@archonet.com>
<7c33d060608040810j7f722af3g6a3185bf1cb990d6@mail.gmail.com>
David Garamond wrote:
> On 8/4/06, Richard Huxton <dev@archonet.com> wrote:
>> David Garamond wrote:
>> > Dear all,
>> >
>> > Please see SQL below. I'm already satisfied with everything except I
>> > wish in
>> > #4, mtime got automatically updated to NOW() if not explicitly SET in
>> > UPDATE
>> > statement. Is there a way to make the mtime column behave more like I
>> > wanted? Thanks in advance.
>>
>> Just check for OLD.mtime = NEW.mtime, or am I missing something here?
>
> How do I differentiate between:
>
> UPDATE t SET mtime=mtime ...;
>
> in which mtime is specifically set and should not change, and
>
> UPDATE t SET foo=bar ...;
>
> in which mtime is not mentioned and should be updated automagically to
> NOW().
You can't. The trigger knows nothing about the original statement, just
the old and new tuple values.
You could use SET foo=DEFAULT, but that's neither more or less
convenient than now() in my eyes.
--
Richard Huxton
Archonet Ltd
view thread (10+ messages) latest in thread
Message-ID: <44D3705E.9050304@archonet.com> Permalink: ../44D3705E.9050304@archonet.com/ Also on: postgresql.org/message-id/44D3705E.9050304@archonet.com ·
reply
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: dev@archonet.com, davidgaramond@gmail.com Subject: Re: autoupdating mtime column In-Reply-To: <44D3705E.9050304@archonet.com> * 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