Hi, I'm new to the mailing list. I use HSQL for development at work and I'm
very impressed with the latest version 2.0.
I have found one problem that I think is a bug, however. I am preparing a
statement using ResultSet.CONCUR_UPDATABLE, but when I call executeQuery()
on it, the ResultSet's metadata shows that it is not updatable. When I use
one of the updateXXX methods, I get
org.hsqldb.HsqlException: attempt to assign to non-updatable column
I should mention that I'm not using the bleeding edge version. I think I'm
on RC2 or 3, so if this has been fixed in the past couple months I
apologize.
I did a little debugging and this is what I found:
In the JDBCPreparedStatement constructor, the call
int props = ResultProperties.getValueForJDBC(resultSetType,
resultSetConcurrency, resultSetHoldability);
returns a value that is indeed updatable, but the statement
Result in = session.execute(resultOut);
doesn't seem to copy those properties into the new Result, so the new Result
has the default concurrency and read-only properties.
It seems like this would be a pretty easy fix, especially for someone who
knew the code and where to copy the property from one Result to the other.
I was hoping this could be fixed ASAP so I don't have to go around the
error by using separate update statements, but I can do that.
I hope I helped. You have a terrific product and I love closing the gaps in
great products.
Andrew
|