2014-02-22 47 views
4

嗨每一個我現在用綠色DAO庫,用於創建和操縱數據庫和我有一樣的Android greenDAO貯藏浮點數錯

 Float total; 

在數據庫中的某些字段時,我試圖插入值25.4它存儲25.4099998474121

後來,當我從數據庫中檢索我越來越25.4099998474121,最終我所有的計算腳麻數據

請幫我擺脫這種

的3210

謝謝

+0

你能顯示一些代碼嗎?看起來你存儲25.41 – Henry

回答

0

創建Sqlite表時給浮點字段類型爲十進制(15,2)。這裏2指定小數點的數量,15代表允許的總位數。

我試着用下面的代碼和它的作品完美,

create table testing(numberField decimal(15,2)) 
insert into testing values(9999999999999.99) 

但添加更多的值將四捨五入。

你的情況,你需要插入,

insert into testing values(25.4) 

這正好插在SQLite數據庫中值25.4。如果這不起作用,那麼你的程序會分配額外的值或舍入。

+0

我已經指定了相同的,但它已經添加了19位數到表 –

+0

@SoftwareSainath我已經更新了答案並嘗試分配到BigDecimal而不是浮點數,同時從數據庫中檢索。 – Ajeesh