Re: currval() during one statement

Поиск
Список
Период
Сортировка
От silly_sad
Тема Re: currval() during one statement
Дата
Msg-id 478EF846.6030700@bankir.ru
обсуждение исходный текст
Ответ на currval() during one statement  (silly_sad <sad@bankir.ru>)
Список pgsql-ru-general
Andrew Boag wrote:
> sequence не "живет" польностью в транзации. они ведут себе как
> глобальные значение в скрипте.

Вот поэтому currval() и придуман ! чтобы жить в транзакции.
Если другая транзакция юзает nextval() то мой currval() не аффектится

> (больше тем предыдущие) ... но с  currval() надо аккуратно (может быть
> concurrent transaction вызвал nextval() )

Вы не внимательно читали вопрос.
nextval() вызвал
триггер before insert on ttt

> silly_sad wrote:
>> нормально ли что currval() возвращает разные значения вот в таком вызове:
>>
>> INSERT INTO ttt (a,b) SELECT currval('ttt_id_seq'), 'const' FROM ttt2;
>>
>> если триггер before insert on ttt вызывает nextval('ttt_id_seq')
>>
>> Я вообще-то ожидал получить равное значение для всех выбираемых записей,
>> то которое было непосредственно перед этим запросом.


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

Предыдущее
От: Andrew Boag
Дата:
Сообщение: Re: currval() during one statement
Следующее
От: "Sergey Konoplev"
Дата:
Сообщение: [PGSQL-RU-GENERAL] Условное упорядочивание по произвольному набору полей