我在一些最基本的问题上遇到了很大的困难。我的数据库中有以下条目

{"_id"=>BSON::ObjectId('4ec2429c85aab65f16fa2700'),
     "owner"=>4,
     "friends"=>{"mappings"=>{"Test"=>34}},
     "friendid"=>"309"}


我正在尝试将另一个值插入映射数组。类似于“测试” => 10

不幸的是,当尝试各种不同的方法时,我再也没有运气了。目前,我正在尝试以下操作,但均未成功。

BasicDBObject updateQuery = new BasicDBObject();
updateQuery.put("owner", owner);
updateQuery.put("friendid", userid);
BasicDBObject updateCommand = new BasicDBObject();
updateCommand.put("$push",  new BasicDBObject("friends.mappings",
                                    new BasicDBObject(clustername, clusterid)));
WriteResult result = collection.update(updateQuery, updateCommand,false,true);


如果有人可以告诉我我做错了,我将不胜感激。我假设它确实很明显!

附言:我正在使用最新的驱动程序和最新的MongoDB

最佳答案

检查您的数据库是否被“封顶”(即以封顶:“ true”创建)

10-08 18:53