Re: Update PK Violation
От | Scott Marlowe |
---|---|
Тема | Re: Update PK Violation |
Дата | |
Msg-id | dcc563d10801160815m12db2b6ep1b398d3b019b8f1d@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Update PK Violation (Achilleas Mantzios <achill@matrix.gatewaynet.com>) |
Список | pgsql-sql |
On Jan 16, 2008 8:30 AM, Achilleas Mantzios <achill@matrix.gatewaynet.com> wrote: > Στις Tuesday 15 January 2008 23:03:49 ο/η Franklin Haut έγραψε: > > Hi all, > > > > i have a problem with one update sentence sql. > > > > A simple way i use: > > foodb=# update temp set num = num*1000 where num >= 5; > foodb=# insert into temp values (5, 'NOT'); > foodb=# update temp set num = 1 + num/1000 where num >= 6; That's still open to possible collisions. Another method that avoids them is to use negative numbers. i.e. update temp set num = -1*num where num >=5; insert into temp values (5,'NOT';); update temp set num = (-1*num) + 1 where num < 0; Assuming you don't use negative numbers in your setup, works a charm. However, this kind of activity screams "bad design"... Not that I've never found myself right smack dab in the middle of such a thing
В списке pgsql-sql по дате отправления: