Re: is it a bug in rule system?
От | A. Kretschmer |
---|---|
Тема | Re: is it a bug in rule system? |
Дата | |
Msg-id | 20080528082825.GA25117@a-kretschmer.de обсуждение исходный текст |
Ответ на | is it a bug in rule system? (laser <laserlist@pgsqldb.com>) |
Ответы |
Re: is it a bug in rule system?
|
Список | pgsql-general |
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. Andreas -- Andreas Kretschmer Kontakt: Heynitz: 035242/47150, D1: 0160/7141639 (mehr: -> Header) GnuPG-ID: 0x3FFF606C, privat 0x7F4584DA http://wwwkeys.de.pgp.net
В списке pgsql-general по дате отправления: