Re: Getting ID of last-inserted row - Mailing list pgsql-general

From Raymond O'Donnell
Subject Re: Getting ID of last-inserted row
Date
Msg-id 4A13DA29.5070601@iol.ie
Whole thread Raw
In response to Re: Getting ID of last-inserted row  ("A. Kretschmer" <andreas.kretschmer@schollglas.com>)
List pgsql-general
On 20/05/2009 11:17, A. Kretschmer wrote:
> In response to David :
>> Hi there.
>>
>> I never found an adequate (simple and efficient) method for getting
>> the primary key ID of the just-inserted row, and usually used
>> transactions and "select last value, ordered by id"-type queries to
>> get the last id value, or other ugly logic.
>
> use currval() instead, see
> http://www.postgresql.org/docs/current/static/functions-sequence.html

Also, you can do insert....returning... (as of version 8.2, I think):

INSERT INTO clients (id, name)
  VALUES (nextval('clients_id_seq'), 'John Smith')
  RETURNING id;

Ray.

------------------------------------------------------------------
Raymond O'Donnell, Director of Music, Galway Cathedral, Ireland
rod@iol.ie
Galway Cathedral Recitals: http://www.galwaycathedral.org/recitals
------------------------------------------------------------------

pgsql-general by date:

Previous
From: "A. Kretschmer"
Date:
Subject: Re: Getting ID of last-inserted row
Next
From: Peter Geoghegan
Date:
Subject: Suggested way of associating PG user metadata with record