How to delete all documents in mongodb collection in java
26,953
Solution 1
To remove all documents use the BasicDBObject or DBCursor as follows:
MongoClient client = new MongoClient("10.0.2.113" , 27017);
MongoDatabase db = client.getDatabase("maindb");
MongoCollection collection = db.getCollection("mainCollection")
BasicDBObject document = new BasicDBObject();
// Delete All documents from collection Using blank BasicDBObject
collection.deleteMany(document);
// Delete All documents from collection using DBCursor
DBCursor cursor = collection.find();
while (cursor.hasNext()) {
collection.remove(cursor.next());
}
Solution 2
Using API >= 3.0:
MongoClient mongoClient = new MongoClient("127.0.0.1" , 27017);
MongoDatabase db = mongoClient.getDatabase("maindb");
db.getCollection("mainCollection").deleteMany(new Document());
To drop the collection (documents and indexes) you still can use:
db.getCollection("mainCollection").drop();
see https://docs.mongodb.org/getting-started/java/remove/#remove-all-documents
Solution 3
If you want to remove all documents in collection then used below code :
db.getCollection("mainCollection").remove(new BasicDBObject());
Or If you want to drop whole collection then used this :
db.getCollection("mainCollection").drop();
Related videos on Youtube
Author by
Viratan
Updated on July 09, 2022Comments
-
Viratan almost 2 years
I want to delete all documents in a collection in java. Here is my code:
MongoClient client = new MongoClient("10.0.2.113" , 27017); MongoDatabase db = client.getDatabase("maindb"); db.getCollection("mainCollection").deleteMany(new Document());
Is this the correct way to do this?
I am using MongoDB 3.0.2
-
Yogesh almost 9 yearsyou want to remove specific matched documents or drop whole collection?
-
Viratan almost 9 yearsAll the documents in the collection.
-
-
Abhishek Singh almost 7 yearsWhats the difference between these 2 approaches ?
-
Wheezil over 6 yearsAdvise against using drop() to truncate a collection if you are going to keep using it. You may get an erratic error 'Operation aborted because: all indexes on collection dropped'. This is apparently because index destroy is asynchronous.