1

Oracle DB から列値 (DB に float データ型として格納) を読み取り、取得した数値を文字列に格納すると、値に違いがあるのはなぜですか。たとえば。列には .0286949901125447 が格納されますが、これが Java JDBCTemplate を使用して DB から読み取られると、.028694990112544703 が出力されます。Oracle 10.2 を使用しています。誰でもこの問題で私を助けることができますか?

4

2 に答える 2

2

コードを私たちと共有していないため、正確な回答を提供することは困難です. ただし、DB と文字列の値は同じだと思います。DB でデータを表示するために使用しているツールが値をフォーマットし、おそらく末尾を削除するだけなので、最後の 2 文字が表示されません02

于 2013-03-21T09:39:18.027 に答える
0

このガイドをチェックしてください: http://floating-point-gui.de/basic/

丸め誤差を避けるために、Java で BigDecimal を使用します。

于 2013-03-21T09:38:37.877 に答える