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