Re: Rule trouble (looks to me exactly like the example) - Mailing list pgsql-sql

From Frank Joerdens
Subject Re: Rule trouble (looks to me exactly like the example)
Date
Msg-id 20020405120851.D30469@superfly.archi-me-des.de
Whole thread Raw
In response to Re: Rule trouble (looks to me exactly like the example)  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Rule trouble (looks to me exactly like the example)  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-sql
On Thu, Apr 04, 2002 at 02:29:13PM -0500, Tom Lane wrote:
> Frank Joerdens <frank@joerdens.de> writes:
> > And here's the rule (it doesn't do anything real or interesting, I just
> > simplified it to the point where it looked like the example):
> 
> > CREATE RULE insert_level AS
> > ON INSERT TO tree
> > WHERE new.id > 0 DO
> > UPDATE tree SET leveling = 1
> > WHERE tree.oid = new.oid;
> 
> What's happening is that "new.id" is effectively still NULL at the point
> where the rule is processed, so the rule WHERE condition fails.  I'm not
> sure why you're bothering with that WHERE condition anyway ... 

Without the WHERE condition, all rows are affected by the update, and
not just the newly inserted one.

Regards, Frank


pgsql-sql by date:

Previous
From: Tom Lane
Date:
Subject: Re: Rule trouble (looks to me exactly like the example)
Next
From: Magnus Enbom
Date:
Subject: LIMIT 1 FOR UPDATE or FOR UPDATE LIMIT 1?