我正在尝试使用对象ID更新文档但未获得结果。这是我的代码请帮帮我
DBCollection patients= db.getCollection("Patients");
BasicDBObject doc = new BasicDBObject();
doc.put("name","seshu");
DBObject update=`new` BasicDBObject().append("_id",ObjectId("534e1c8e40a8af540cd01ff4"));
patients`enter code here`.update(update, doc);
答案 0 :(得分:1)
当你说"没有得到结果"时,我认为你的意思是文件没有更新?
您确定您的集合名称,数据库名称和ObjectId是否正确?并且该文档存在于具有该ObjectId的该集合中。你应该通过你的程序或mongo shell仔细检查所有这些。
为什么不尝试在代码中添加一些额外的检查/调试,如下所示:
DBCollection patients = db.getCollection("Patients");
DBObject update = new BasicDBObject().append("_id", new ObjectId("..."));
long collectionCount = patients.count();
System.out.println(String.format("Collection count: %s", collectionCount));
long count = patients.count(update);
System.out.println(String.format("Count for query: %s", count));
BasicDBObject doc = new BasicDBObject();
doc.put("name", "seshu");
WriteResult writeResult = patients.update(update, doc);
System.out.println(String.format("Updated %s records", writeResult.getN()));
DBObject updated = patients.findOne(update);
System.out.println(updated);