How to delete all documents in mongodb collection in java

前端 未结 4 904
半阙折子戏
半阙折子戏 2020-12-17 09:59

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         


        
相关标签:
4条回答
  • 2020-12-17 10:28

    For newer mongodb drivers you can use FindIterable to remove all documents in collection.

    FindIterable<Document> findIterable = collection.find();
           for (Document document : findIterable) {
             collection.deleteMany(document);
           }
    
    0 讨论(0)
  • 2020-12-17 10:34

    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());
    }
    
    0 讨论(0)
  • 2020-12-17 10:36

    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();
    
    0 讨论(0)
  • 2020-12-17 10:39

    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

    0 讨论(0)
提交回复
热议问题