1

为什么当我从 oracle DB 读取列值(在 DB 中存储为浮点数据类型)并将检索到的数字存储在字符串中时,值会有所不同。例如。该列存储 .0286949901125447,但是当使用 Java JDBCTemplate 从数据库中读取它时,它会输出 .028694990112544703。我正在使用 Oracle 10.2。谁能帮我解决这个问题?

4

2 回答 2

2

很难给你一个准确的答案,因为你没有与我们分享任何代码。但是我相信 DB 和 string 的值是相同的。只需您用于查看 DB 中数据的工具格式化值并可能删除尾部,因此您只是看不到最后 2 个字符02

于 2013-03-21T09:39:18.027 回答
0

查看本指南: http: //floating-point-gui.de/basic/

在 java 中使用 BigDecimal 来避免舍入错误。

于 2013-03-21T09:38:37.877 回答