RoboMongo - 无法从集合中删除文档

时间:2016-12-22 11:30:02

标签: mongodb robo3t

我使用RoboMongo删除了许多与查询匹配的文档。但是,它表示没有删除任何文件:

db.getCollection('assets').remove( { "source": "red" } );        

然而,这完美地运作:

db.getCollection('assets').find( { "source": "red" } );  

并显示包含来源"红色"。

的所有记录

有没有理由没有删除记录而且robomongo只输出0?

亲切的问候,

4 个答案:

答案 0 :(得分:2)

您是否正在使用副本集运行?如果是这样,请确保在主节点上运行remove命令。

答案 1 :(得分:1)

你可以尝试这个:

db.assets.remove( {source : "red" } ) 

答案 2 :(得分:0)

您可以尝试此查询:

db.assets.remove( { "source":"red"} )

答案 3 :(得分:0)

<script type="text/javascript"> $(document).ready(function(){ var Group = { __RequestVerificationToken: gettoken(), GroupId: 1, GroupName: "My Group Name" }; AjaxPost("/Groups/AddGroup", Group).done(function () { GetGroups(); }); }); function gettoken() { var token = '@Html.AntiForgeryToken()'; token = $(token).val(); return token; } function AjaxPost(url, data) { return $.ajax({ type: "post", contentType: "application/json;charset=utf-8", dataType: "json", responseType: "json", url: url, headers: { "RequestVerificationToken": gettoken() }, data: JSON.stringify(data) }); } </script> 为我工作:https://docs.mongodb.com/v3.2/reference/method/db.collection.deleteMany/#db.collection.deleteMany

DeleteMany

这应该返回

db.getCollection('assets').deleteMany({source: 'red'})

example screenshot

从上面的查询中,我删除了所有快照ID为/* 1 */ { "acknowledged" : true, "deletedCount" : number // which is the number of documents deleted } 的乘客