Exception while updating result set
От | Prasanth |
---|---|
Тема | Exception while updating result set |
Дата | |
Msg-id | 472e572d-d1b9-63af-7a47-50c84dafe2ea@pangburngroup.com обсуждение исходный текст |
Ответы |
Re: Exception while updating result set
|
Список | pgsql-jdbc |
Hi,
The following code generates an exception shown below. Commenting out the refreshRow() call would solve the issue. This exception happens only in driver versions 42.2.13 and above. Is this a bug in the driver?
ResultSet rs = connection.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE ).executeQuery(sql);
rs.next();
rs.updateDate("start_date", Date.valueOf("2020-01-01"));
rs.updateDate("end_date", Date.valueOf("2020-12-31"));
rs.updateRow();
rs.refreshRow();
rs.updateDate("end_date", Date.valueOf("2020-12-30"));
rs.updateRow(); // Exception occurs at this line.
Exception in thread "main" java.lang.IllegalArgumentException: Attempted to write to readonly tuple
at org.postgresql.core.Tuple.set(Tuple.java:96)
at org.postgresql.jdbc.PgResultSet.setRowBufferColumn(PgResultSet.java:1680)
at org.postgresql.jdbc.PgResultSet.updateRowBuffer(PgResultSet.java:1733)
at org.postgresql.jdbc.PgResultSet.updateRow(PgResultSet.java:1378)
Thanks,
Prasanth
The following code generates an exception shown below. Commenting out the refreshRow() call would solve the issue. This exception happens only in driver versions 42.2.13 and above. Is this a bug in the driver?
ResultSet rs = connection.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE ).executeQuery(sql);
rs.next();
rs.updateDate("start_date", Date.valueOf("2020-01-01"));
rs.updateDate("end_date", Date.valueOf("2020-12-31"));
rs.updateRow();
rs.refreshRow();
rs.updateDate("end_date", Date.valueOf("2020-12-30"));
rs.updateRow(); // Exception occurs at this line.
Exception in thread "main" java.lang.IllegalArgumentException: Attempted to write to readonly tuple
at org.postgresql.core.Tuple.set(Tuple.java:96)
at org.postgresql.jdbc.PgResultSet.setRowBufferColumn(PgResultSet.java:1680)
at org.postgresql.jdbc.PgResultSet.updateRowBuffer(PgResultSet.java:1733)
at org.postgresql.jdbc.PgResultSet.updateRow(PgResultSet.java:1378)
Thanks,
Prasanth
В списке pgsql-jdbc по дате отправления: