Re: Problems with transactions and sequences
| От | Tom Lane |
|---|---|
| Тема | Re: Problems with transactions and sequences |
| Дата | |
| Msg-id | 17286.1062082281@sss.pgh.pa.us обсуждение |
| Ответ на | Problems with transactions and sequences (Sune Nielsen <sunegn@image.dk>) |
| Список | pgsql-general |
Sune Nielsen <sunegn@image.dk> writes:
> Now, the problem is that I wish to extract the sequence number from a
> newly inserted user, like this:
> INSERT INTO Users (name) VALUES ('JohnDoe');
> SELECT CURRVAL('users_bid_seq');
> This works perfectly(!), but my project involves multiple simultanous
> users so I have to use transactions like this:
> BEGIN;
> INSERT INTO Users (name) VALUES ('JohnDoe');
> SELECT CURRVAL('users_bid_seq');
> COMMIT;
No, you don't need the BEGIN/COMMIT. Read the description of currval
again.
> This, however, doesn't work although I thought it should. It doesn't
> return anything at all?!?!
Surely it does. You didn't say exactly what client-side code you are
using, but I suspect it's looking at the result of the COMMIT step
(ie, nothing) instead of the result of the prior SELECT.
regards, tom lane
В списке pgsql-general по дате отправления: