我在我的SQL Express數據庫中有一些小數(18,2)字段。十進制值未被正確舍入
現在當一些聚合碰巧得到一個結果。我有時會失去1分。
說的結果應該是192,84歐元我的程序顯示192,83歐元,但如果你使用計算器顯示192,84的聚合。
任何想法爲什麼會發生這種情況。我使用格式字符串貨幣的DevExpress控件。 我有一個想法將字段更改爲十進制(18,3)你認爲什麼?
謝謝
[編輯]
現在,當值suming首次展示(例如1.074,64爲1.074,65)是說,我可以看到它幾輪下來,但正確的是第二個結尾,65。
例如:194,61 + 182,20 + 697,84 = 1.074,65,但它下降到1.074,64。如果您再次嘗試獲取這些數值,它將顯示正確....
您認爲我應該總結嗎?什麼是十進制值最好的整數方法?
一些代碼:
SumingTotal = AnObject.ListOfAType.Sum(p => p.DecimalProperty) +
(DecimalValue1 + DecimalValue2);
應該等於1.074,65但顯示1.074,64如果我走出顯示這些 值的環境,並嘗試一些後再次檢查它們保存在數據庫中,並重新計算雖然在表單中正確顯示但在數據庫中已經是錯誤的。
謝謝。
我正在將它存儲在帶有十進制類型的數據庫字段(18,2)我不明白。 – 2011-01-31 15:57:17