| From: | Stefan Reiser <s(dot)reiser(at)tu-braunschweig(dot)de> |
|---|---|
| To: | Anton Bobov <bobov_a(at)sibsac(dot)ru>, pgsql-jdbc(at)postgresql(dot)org |
| Subject: | Re: Updatable query and column aliases |
| Date: | 2012-03-07 23:50:51 |
| Message-ID: | 4F57F45B.3070807@tu-braunschweig.de |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-jdbc |
Anton Bobov schrieb:
> Hi folks.
>
> I cant moveToInsertRow when use queries with assigned names in select
> list.
>
> Following code works good:
>
> stmt = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
> ResultSet.CONCUR_UPDATABLE);
> rs = stmt.executeQuery("select id from test");
> rs.moveToInsertRow();
>
> , but then I change query to "select id val from test" exception "The
> column name id was not found in this ResultSet." raised on
> moveToInsertRow.
>
> Is it any limitation on updatable queries?
>
> --
> Anton
>
>
Hello Anton,
yes, the limitations are:
1) query must only use one table
2) no column aliases can be used
Point 2 is a bug which I have described here:
http://archives.postgresql.org/pgsql-jdbc/2010-12/msg00084.php
and here:
http://archives.postgresql.org/pgsql-jdbc/2011-08/msg00077.php
The patch mentioned above does not work anymore since some things have
changed in later versions of the driver.
Here is a patch for version 9.0.801 (the only file that has to be
changed is "AbstractJdbc2ResultSet").
http://home.arcor.de/stefanreiser/docs/postgresql/9.0.801/AbstractJdbc2ResultSet.java
... sorry, I'm not familiar with the versioning system - maybe one of
the developers can take a look at my patch?
Regards
Stefan Reiser
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Stefan Reiser | 2012-03-08 00:02:17 | Re: Updatable query and column aliases |
| Previous Message | John R Pierce | 2012-03-07 19:55:21 | Re: Defining local IP address when opening connections to database |