Skip site navigation (1) Skip section navigation (2)

Re: Serial key

From: Bhushan Bhangale <bbhangale(at)Lastminute(dot)com>
To: Chris Smith <cdsmith(at)twu(dot)net>, pgsql-jdbc(at)postgresql(dot)org
Subject: Re: Serial key
Date: 2004-02-13 17:48:34
Message-ID: C9590F897BFAD7119E63000BCD682083C66D5C@lmnukpriv.lastminute.com (view raw or flat)
Thread:
Lists: pgsql-jdbc
Thanks Chris!

Just wanted to confirm what all I can do.

I will ofcourse go with the best way of generating id beforehand.

-----Original Message-----
From: Chris Smith [mailto:cdsmith(at)twu(dot)net]
Sent: 13 February 2004 17:46
To: Bhushan Bhangale; pgsql-jdbc(at)postgresql(dot)org
Subject: Re: [JDBC] Serial key


Bhushan Bhangale wrote:
> I have a table in which the primary key is of type SERIAL. I insert a
> record and then I want the generated id because of this, so that I
> can use the id to insert records in child table.
>
> I know about a solution in which generate a id before hand and then
> use the id to insert in table and also in child tables.

IMO, that's definitely the best way to go.

> The other stuff which I read in JDK 1.4 is of getGeneratedKeys().
>
> The problem is I have to use JDK 1.3.1.
>
> Is there any solution for this problem?

Incidentally, using 1.4 wouldn't help you because the PostgreSQL JDBC driver
doesn't implement getGeneratedKeys anyway.  The only other approach is to
use
some unique set of columns in the table other than your numeric key, and
immediately follow your insert statement with a select.  This only works if
your records are unique without regard to the generated key.  As an example,
you'd do:

    insert into mytable (name, department, position, hiredate)
        values('jdoe', 'eng', 'manager', DATE '10-12-1994');

    select empid from mytable where
        name = 'jdoe' AND
        department = 'eng' AND
        position = 'manager' AND
        hiredate = DATE '10-12-1994';

-- 
www.designacourse.com
The Easiest Way to Train Anyone... Anywhere.

Chris Smith - Lead Software Developer/Technical Trainer
MindIQ Corporation


________________________________________________________________________
This e-mail has been scanned for all viruses by Star Internet. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________

________________________________________________________________________
This e-mail has been scanned for all viruses by Star Internet. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________

pgsql-jdbc by date

Next:From: John Sidney-WoollettDate: 2004-02-13 18:21:49
Subject: Re: Serial key
Previous:From: Chris SmithDate: 2004-02-13 17:46:57
Subject: Startup message issues

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group