Re: Updatable query and column aliases

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

In response to

Responses

Browse pgsql-jdbc by date

  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