Re: set-level update fails with unique constraint violation

Поиск
Список
Период
Сортировка
От Roman Neuhauser
Тема Re: set-level update fails with unique constraint violation
Дата
Msg-id 20100102084041.GD1484@isis.sigpipe.cz
обсуждение исходный текст
Ответ на Re: set-level update fails with unique constraint violation  (David Fetter <david@fetter.org>)
Ответы Re: set-level update fails with unique constraint violation  (Scott Marlowe <scott.marlowe@gmail.com>)
Список pgsql-general
# david@fetter.org / 2009-12-31 08:04:58 -0800:
> On Thu, Dec 31, 2009 at 10:52:20AM +0100, neuhauser+pgsql-general#postgresql.org@sigpipe.cz wrote:
> > Hello,
> >
> > this fails with "duplicate key value":
> >
> >     CREATE TABLE x (
> >       i INT NOT NULL UNIQUE
> >     );
> >     INSERT INTO x (i) VALUES (1), (2), (3);
> >     UPDATE x SET i = i + 1;
> >
> > are there any plans to make this work?
>
> This will work in 8.5:
>
> CREATE TABLE x (
>     i int NOT NULL UNIQUE DEFERRABLE INITIALLY DEFERRED
> );
> INSERT INTO x (i) VALUES (1), (2), (3);
> UPDATE x SET i = i + 1;

thanks, this might be a bearable workaround in some cases
provided there's also SET CONSTRAINTS ... DEFERRED / IMMEDIATE.
what I really want is a mode that fires the constraint check
at the end of the statement.

--
Roman Neuhauser

В списке pgsql-general по дате отправления:

Предыдущее
От: Dimitri Fontaine
Дата:
Сообщение: Re: pg_dump excluding tables content but not table schema
Следующее
От: Scott Marlowe
Дата:
Сообщение: Re: set-level update fails with unique constraint violation