From: | "Gary Greenberg" <gary(at)icontrol(dot)com> |
---|---|
To: | <pgsql-jdbc(at)postgresql(dot)org> |
Subject: | Re: Error while retrieving generated keys |
Date: | 2007-03-09 18:36:35 |
Message-ID: | 030801c76279$de152100$740a3c0a@D9GKB4C1 |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc pgsql-odbc |
I see it now. It should have been, however, mentioned in documentation for
the JDBC driver.
I have also reviewed a recent thread
http://archives.postgresql.org/pgsql-jdbc/2007-03/msg00038.php on a similar
topic.
The gist of it was how to overcome the deficiency of JDBC3 driver using
JDBC1 features.
It looks to me that you, guys, are missing the primary point:
Ability to retrieve auto-generated key is one of the key features of JDB3.
It exists for over 2 years and all JDBC3 drivers I know of, supports it.
A lot of frameworks (JPA, Hibernate, etc.) are relying on it. It means that
they won't work with PostgreSQL.
It also means that developers must do a lot of extra tinkering to adopt many
standard apps for PostgreSQL.
In essence it means that PostgreSQL has fallen into the third world of
database engines.
I used to work a lot with PostgreSQL in mid-90s and loved it but I just
recently returned to this world from working with Oracle, Sybase, etc.
I am really disappointed that PostgreSQL is becoming a fossil.
If there are no plans to make this feature work in the very near future,
I'll be pushing for replacement of the engine.
_____
From: QuanZongliang [mailto:quanzongliang(at)hotmail(dot)com]
Sent: Thursday, March 08, 2007 8:48 PM
To: Gary Greenberg
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: RE: [JDBC] Error while retrieving generated keys
from AbstractJdbc3Connection.java:
348 public PreparedStatement prepareStatement(String sql, int
autoGeneratedKeys)
349 throws SQLException
350 {
351 if (autoGeneratedKeys != Statement.NO_GENERATED_KEYS)
352 throw new PSQLException(GT.tr("Returning autogenerated keys
is not supported."), PSQLState.NOT_IMPLEMENTED);
353 return prepareStatement(sql);
354 }
So, it is not supported.
Only the prepareStatement(sql, Statement.NO_GENERATED_KEYS) can be used.
_____
From: gary(at)icontrol(dot)com
To: pgsql-jdbc(at)postgresql(dot)org
Subject: [JDBC] Error while retrieving generated keys
Date: Thu, 8 Mar 2007 19:49:52 -0800
My application trew the following exception:
org.postgresql.util.PSQLException: Returning autogenerated keys is not
supported.
at
org.postgresql.jdbc3.AbstractJdbc3Connection.prepareStatement(AbstractJdbc3C
onnection.java:352)
at
org.apache.commons.dbcp.DelegatingConnection.prepareStatement(DelegatingConn
ection.java:394)
at
org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.prepare
Statement(PoolingDataSource.java:370)
I am using 8.2-504.jdbc3 driver with the PostgreSql 8.0.8 on SUSE Linux.
I have not seen anywhere in the documentation that this standard JDBC3
feature is not supported.
Can anyone explain it to me, please.
From | Date | Subject | |
---|---|---|---|
Next Message | Heikki Linnakangas | 2007-03-09 19:31:14 | Re: Error while retrieving generated keys |
Previous Message | Dave Cramer | 2007-03-09 12:00:55 | Re: Error while retrieving generated keys |
From | Date | Subject | |
---|---|---|---|
Next Message | Heikki Linnakangas | 2007-03-09 19:31:14 | Re: Error while retrieving generated keys |
Previous Message | David Gardner | 2007-03-09 18:11:24 | Re: Access violation - probably not the fault of Postgres |