How to remove all items from collection stored in mongodb using GO lang?
In mongo console I can use:
db.mycollection.remove({})
where empty brackets {} mean all document pattern.
In GO lang (I use "gopkg.in/mgo.v2" and "gopkg.in/mgo.v2/bson") there are methods:
sess.DB("mydb").C("mycollection").Remove(...)
or
sess.DB("mydb").C("mycollection").RemoveAll(...)
but both of them needs parameter that implements selector. For example selector can be a bson map
bson.M{"id": id}
but I want to remove all elements, not a particular one.
See the MongoDB documentation at: http://docs.mongodb.org/manual/tutorial/remove-documents/
To remove all the documents of a given collection, just call RemoveAll with an empty selector. Just passing nil as a parameter should work fine:
sess.DB("mydb").C("mycollection").RemoveAll(nil)
Be sure to check the returned objects though.
As per @DidierSpezia response use C("mycollection").RemoveAll
. However since the JSON specification distinguishes between an "empty object" {}
and "null", you should probably use an empty map[string]interface{}
or bson.M
.
sess.DB("mydb").C("mycollection").RemoveAll(bson.M{})
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.