この問題を回避するのは苦労しています。C#浮動小数点数をfloatに変換してsql floatカラムに挿入する
私はというbalance
という列を持つエンタープライズDBテーブルを使用しています。
decimal
値を挿入しようとしています。今ではC#で2桁の小数点を丸めて列に挿入してみましたが、これはこれだけです。 56.4000015258789
私の値が56.40
の場合。
私は自分の挿入の直前にデバッグしていて、丸められています。私は列を変更することはできません。 。 .soどのように私はこれを回避するのですか?
これは、sqlが分数をどのように考慮するかと関係があることを知っています。
小数点以下を文字列にフォーマットしてから、浮動小数点数に解析しても機能しませんでした。
C#の 'float'は7桁の精度しか持たず、すべての非整数値を正確に表すことはできません。代わりに 'double'を試してください。 SQLの10進表記を維持する必要がある場合は、代わりに 'decimal'カラムを使用してください。 –
@DStanley私はカラムを変更できません。本当にイライラします。 –
@AdamV問題は、挿入前のfloat値が四捨五入されていることです。しかし、それは何らかの理由でsqlを取得すると、トレーニング番号を構成し始めます。 –