Java ResultSet.getBigDecimal() Oracle 的扩展问题
Java ResultSet.getBigDecimal() scale issue with Oracle
使用 Oracle 11g
.
使用 JDBC ResultSet.getBigDecimal(columnName)
从中读取 number(18, 8)
列 - 值为 1
,这就是 returned。但是,我希望它 return 1.00000000
.
有办法得到吗?我尝试了 ResultSet.getBigDecimal(columnName, 8)
(我知道它已被弃用,但无论如何都想尝试)。没用。
试试这个:
BigDecimal bd = new BigDecimal( "1.0" );
System.out.println( bd );
bd = bd.setScale( 6 );
System.out.println( bd );
规模属性影响BigDecimal.toString()
这可能是解决方案:
ResultSet.getBigDecimal(columnName).setScale(8);
使用 Oracle 11g
.
使用 JDBC ResultSet.getBigDecimal(columnName)
从中读取 number(18, 8)
列 - 值为 1
,这就是 returned。但是,我希望它 return 1.00000000
.
有办法得到吗?我尝试了 ResultSet.getBigDecimal(columnName, 8)
(我知道它已被弃用,但无论如何都想尝试)。没用。
试试这个:
BigDecimal bd = new BigDecimal( "1.0" );
System.out.println( bd );
bd = bd.setScale( 6 );
System.out.println( bd );
规模属性影响BigDecimal.toString()
这可能是解决方案:
ResultSet.getBigDecimal(columnName).setScale(8);