Android greenDAO存储浮点数错误

时间:2014-02-22 07:31:40

标签: android android-sqlite greendao

大家好我每个人都在使用绿色DAO库创建和操作数据库,我在数据库中有一些字段,如

     Float total;

当我尝试插入值25.4时,它存储25.4099998474121

之后当我从数据库中检索数据时,我得到的是25.4099998474121,最终我的所有计算都出错了

请帮我摆脱这个

谢谢

1 个答案:

答案 0 :(得分: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。如果这不起作用,那么您的程序将分配额外的值或四舍五入。