Ale*_*der 2 java mongodb mongodb-query
我想在这里完成的工作非常简单.我正在尝试更新MongoDB集合中的单个文档.当我使用任何字段(例如"name")查找文档时,更新查询会成功.这是查询:
mongoDB.getCollection("restaurants").updateOne(
new BasicDBObject("name", "Morris Park Bake Shop"),
new BasicDBObject("$set", new BasicDBObject("zipcode", "10462"))
);
Run Code Online (Sandbox Code Playgroud)
如果我尝试使用ObjectId查找文档,它永远不会工作,因为它不匹配任何文档.
mongoDB.getCollection("restaurants").updateOne(
new BasicDBObject("_id", "56110fe1f882142d842b2a63"),
new BasicDBObject("$set", new BasicDBObject("zipcode", "10462"))
);
Run Code Online (Sandbox Code Playgroud)
是否可以使此查询与对象ID一起使用?
我同意我的问题有点类似于如何使用Java mongodb驱动程序中的"_id"字段查询文档?但是,在尝试更新文档时,我没有收到任何错误.它只是不匹配任何东西.
您当前正在尝试基于字符串而不是ObjectId进行更新.
确保在构建查询时从字符串初始化新的ObjectId:
mongoDB.getCollection("restaurants").updateOne(
new BasicDBObject("_id", new ObjectId("56110fe1f882142d842b2a63")),
new BasicDBObject("$set", new BasicDBObject("zipcode", "10462"))
);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8467 次 |
| 最近记录: |