在项目中有用到CachedRowSet这个类
在底层封装的方法中,将调用执行方法的返回参数ResultSet,丢入CachedRowSet
在调用populate(rs)时报了这个错:CachedRowSet Invalid scale size. Cannot be less than zero.上网搜了下,似乎这是JDBC的BUG,对数值型的封装有误。
我将JDK从1.5换为了1.6,问题解决。
或者将NUMBER型的字段,在查询时+0,如:
select num+0 num from tableName也可以解决此问题
在底层封装的方法中,将调用执行方法的返回参数ResultSet,丢入CachedRowSet
在调用populate(rs)时报了这个错:CachedRowSet Invalid scale size. Cannot be less than zero.上网搜了下,似乎这是JDBC的BUG,对数值型的封装有误。
我将JDK从1.5换为了1.6,问题解决。
或者将NUMBER型的字段,在查询时+0,如:
select num+0 num from tableName也可以解决此问题
本文介绍了解决使用CachedRowSet时出现的“Cannot be less than zero”错误的方法。通过升级JDK版本或调整查询方式可以有效避免这一问题。
732

被折叠的 条评论
为什么被折叠?



