0

我的树莓派上的 mongodb 有问题。我正在从https://github.com/RickP/mongopi运行 2.1.1 版

问题是:我无法1.937在数据库中插入值。这是我从 mongoshell 的输出:

> db.sensor.drop()
true

我先清理收藏,所以一切都很干净

> db.sensor.insert({'sensor_id': 3, 'value': 1.937})
> db.sensor.findOne()
{
    "_id" : ObjectId("5134fb85e59d6e0efe256a79"),
    "sensor_id" : 3,
    "value" : -2.960244045726579e-47
}

如您所见,1.937 的值在数据库中存储错误......这真的很奇怪。

如果我运行以下命令:

> db.sensor.insert({'sensor_id': 3, 'value': 2})

然后我得到

> db.sensor.find()
{ "_id" : ObjectId("5134fb85e59d6e0efe256a79"), "sensor_id" : 3, "value" : -2.960244045726579e-47 }
{ "_id" : ObjectId("5134fcece59d6e0efe256a7a"), "sensor_id" : 3, "value" : 2 }

如您所见,第二个条目很好......问题只是浮动值。

为什么?

谢谢

4

1 回答 1

0

无法在 MongoDB 2.1.1 的本地实例中重现它

MongoDB shell version: 2.1.1
connecting to: test
> db.version()
2.1.1
> db.xx.drop()
false
> db.xx.insert({'sensor_id': 3, 'value': 1.937})
> db.xx.insert({'sensor_id': 3, 'value': 3})
> db.xx.find()
{ "_id" : ObjectId("51586b66cff42dd9c4bc608c"), "sensor_id" : 3, "value" : 1.937 }
{ "_id" : ObjectId("51586b6ccff42dd9c4bc608d"), "sensor_id" : 3, "value" : 3 }
于 2013-03-31T17:06:15.647 回答