Re: LAST_INSERT_ID equivalent - Mailing list pgsql-general

From Bruno Wolff III
Subject Re: LAST_INSERT_ID equivalent
Date
Msg-id 20030612182315.GA4978@wolff.to
Whole thread Raw
In response to Re: LAST_INSERT_ID equivalent  (Erik Price <eprice@ptc.com>)
Responses Re: LAST_INSERT_ID equivalent  (Ericson Smith <eric@did-it.com>)
List pgsql-general
On Thu, Jun 12, 2003 at 13:44:16 -0400,
  Erik Price <eprice@ptc.com> wrote:
>
>
> Edmund Dengler wrote:
> >Greetings all!
> >
> >I believe
> >   select currval('sequence_name');
> >should satisfy your needs. Within a transaction it will stay the same.
>
> Ed, thanks, this looks like what I was looking for --
>
> however, I am concerned by your disclaimer.  Can you explain that a
> little bit?  I read it to mean "if you try to use this technique within
> a transaction where you are INSERTing a new record, it will not reflect
> the new record's ID".  So then in order to determine the new record's ID
> I would need to use
>
>   SELECT CURRVAL('sequence_name') + 1;
>
> within the transaction.

No. You just want to use currval. The comment was referring to other
transactions calling nextval while the transaction of interest is
proceeding.

pgsql-general by date:

Previous
From: Stephan Szabo
Date:
Subject: Re: Cast: timestamp to integer
Next
From: Ericson Smith
Date:
Subject: Re: LAST_INSERT_ID equivalent