Re: Return key from query - Mailing list pgsql-general

From Rob Sargent
Subject Re: Return key from query
Date
Msg-id 4CD07B94.30809@gmail.com
Whole thread Raw
In response to Return key from query  (Jonathan Tripathy <jonnyt@abpni.co.uk>)
Responses Re: Return key from query  (Szymon Guz <mabewlun@gmail.com>)
List pgsql-general

On 11/02/2010 02:43 PM, Jonathan Tripathy wrote:
> Hi everyone,
>
> When adding a new record, we run an insert query which auto-increments
> the primary key for the table. However the method (in java) which calls
> this query must return the newly created key.
>
> Any ideas on how to do this, preferably using a single transaction?
>
> Thanks
>

Ah yes have your cake and eat it too.

If you app code (java) is making new instances and wants to have an id,
then the table cannot have an auto-id.

I'm big on java/class id generation (usually use UUID) but you do have
to take complete responsibility for it.  The hibernate folks frown on it
but their retort is imho woeful.  If you're not using uuid's you will
need a generator.  You can back it up with a persistent store so you
know where you left off, but you will want to (auto-)increment that id
table with a large value (say 5000) and have you generate dole them out
as needed at the app level.  When it has spent 5000 ids, it will go to
the server are ask for another 5000 (separate tx).  Please don't get
hung up on loosing some portion of the 5000 id when you restart or whatever.

pgsql-general by date:

Previous
From: Szymon Guz
Date:
Subject: Re: Return key from query
Next
From: Szymon Guz
Date:
Subject: Re: Return key from query