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: | Raw Message | Whole Thread | 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 |