Re: [SQL] Adding a rule to update a last_changed field

From: Grant Kaufmann <grant(at)intekom(dot)com>
To: pgsql-sql(at)postgresql(dot)org
Subject: Re: [SQL] Adding a rule to update a last_changed field
Date: 1999-10-22 16:05:37
Message-ID: 19991022120537.A5228@intekom.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

This does not work, as it still calls a new UPDATE and re-invokes the rule.

> > I'm trying to use a rule to maintain a last_changed field.
> >
> > CREATE RULE rule1 AS
> > ON UPDATE TO thetable
> > DO UPDATE thetable SET last_changed = now()
> > WHERE id = new.id;
>
> Try instead something like
>
> CREATE RULE rule1 AS
> ON UPDATE TO thetable
> DO INSTEAD UPDATE thetable SET
> last_changed = now(),
> field1 = new.field1,
> field2 = new.field2,
> ...
> fieldn = new.fieldn
> WHERE id = new.id;
>
> That is, use an INSTEAD rule and replace each field explicitly.

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Grant Kaufmann 1999-10-22 16:09:54 Re: [SQL] Adding a rule to update a last_changed field
Previous Message Tom Lane 1999-10-22 15:45:26 Re: [SQL] Adding a rule to update a last_changed field