Re: Moving to postgresql and some ignorant questions

Поиск
Список
Период
Сортировка
От Bill Moran
Тема Re: Moving to postgresql and some ignorant questions
Дата
Msg-id 20070814135651.1fd56abe.wmoran@potentialtech.com
обсуждение исходный текст
Ответ на Re: Moving to postgresql and some ignorant questions  ("Phoenix Kiula" <phoenix.kiula@gmail.com>)
Ответы Re: Moving to postgresql and some ignorant questions
Список pgsql-general
In response to "Phoenix Kiula" <phoenix.kiula@gmail.com>:

> > If you issue a BEGIN then nothing gets committed until you issue a COMMIT. If
> > anything happens in the meantime then everything you've done since the BEGIN
> > disappears.
>
> There are some cases where I would like to bunch queries into a
> transaction purely for speed purposes, but they're not interdependent
> for integrity. E.g.,
>
>   BEGIN TRANSACTION;
>   UPDATE1;
>   UPDATE2;
>   UPDATE3;
>   COMMIT;
>
> If UPDATE2 fails because it, say, violates a foreign key constraint,
> then so be it. I want UPDATE3 to go ahead. Is this not possible, or is
> there an option I can use to do these kind of independent-query
> transactions?

That's not possible, by design.

However, your application could keep track of which queries have run, and
if one fails, start the transaction over without the failing query.

But the rule is, if any query within the transaction errors, then all queries
within the transaction are rolled back.

--
Bill Moran
http://www.potentialtech.com

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

Предыдущее
От: "Phoenix Kiula"
Дата:
Сообщение: Re: Moving to postgresql and some ignorant questions
Следующее
От: Michal Paluchowski
Дата:
Сообщение: Creating a row during a select