Re: is it a bug in rule system? - Mailing list pgsql-general

From laser
Subject Re: is it a bug in rule system?
Date
Msg-id 483D1EF5.7040409@pgsqldb.com
Whole thread Raw
In response to Re: is it a bug in rule system?  ("A. Kretschmer" <andreas.kretschmer@schollglas.com>)
Responses Re: is it a bug in rule system?  (Martijn van Oosterhout <kleptog@svana.org>)
List pgsql-general
A. Kretschmer wrote:
> am  Wed, dem 28.05.2008, um 15:56:22 +0800 mailte laser folgendes:
>
>> hi all,
>>
>> see query below:
>>
>> create table ruleTest(id integer, name text);
>>
>> create or replace rule ruleTest_insert_rule AS on insert to ruleTest
>> where exists(select 1 from ruleTest where ruleTest.name = NEW.name)
>> do instead (update ruleTest set id = id+1 where ruleTest.name = NEW.name);
>>
>> I think the id should be 1, cause the rule condition should only affect
>> exist row,
>> but ISTM the rule act like a DO ALSO rule: insert the row first, then
>> update it.
>>
>> any hints?
>>
>
> Yes, use a TRIGGER instead a RULE for such tasks.
>
>

thanks, good to know it's a bug and we'll try TRIGGER approach.

thanks and best regards

-laser

pgsql-general by date:

Previous
From: "A. Kretschmer"
Date:
Subject: Re: is it a bug in rule system?
Next
From: Kaloyan Iliev
Date:
Subject: Re: Open Source CRM - Options?