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 по дате отправления: