On Fri, 26 Sep 2008, Chen, Dongdong (GE Healthcare, consultant) wrote:

   I am a software engineer from GE. I am using JDBC to operate
PostgreSQL8.3 in Ubuntu8.04. The develop environment is Eclipse3.2 My
problem is:
   There is a PostgreSQL table XX containing 5 fields: AA, BB, CC, DD,
EE, AA is primary key and auto-generated type, BB, CC, DD and EE is
string type.
   I want to get the value of AA immediately after insert a row into
the table. the code is like this:

   Statement st = db.creatStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);

The JDBC driver does not implement true SCROLL_SENSITIVE cursors. The driver copies the values you provide into its ResultSet and sends the query to the backend. On the server the auto-generated values are filled in, but the JDBC driver doesn't get any notification of that. Perhaps with newer server versions we can make it issue a INSERT ... RETURNING ... so that we get that data.

I am not sure it is proper to send this mail to this mail list. Sorry if
bring you any inconvenience.

Generally cross posting should be avoided and JDBC/Java questions should be directed to the -jdbc list, but this is a very good question and one that does prompt further investigation about what can be done in the JDBC driver to make this better.

Kris Jurka

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to