我想用java删除集合中的所有文档.这是我的代码:

MongoClient client = new MongoClient("10.0.2.113" , 27017);
        MongoDatabase db = client.getDatabase("maindb");
        db.getCollection("mainCollection").deleteMany(new Document());

这是正确的方法吗?

我正在使用MongoDB 3.0.2

推荐答案

要删除所有文档,请使用BasicDBObject或DBCursor,如下所示:

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());
}

Mongodb相关问答推荐

MongoDB 4.4如何使用未知密钥更新dict

将消息流式传输到WebSocket

如何在Mongo中制作全覆盖索引

如何用Python和MongoDB找到单据字段的最大值?

MongoDB:如何获取多个$indexOfArray值?

数组过滤器 MongoDB

Mongodb,在一个查询中用正则表达式更新部分字符串

MongoDB聚合:如何将查找结果放入嵌套数组中?

在mongodb中,如何使用聚合来获取字段之间的对应关系

在MongoDb的数组中计算大于某个数字的数字

MongoDB 列表 - 获取每第 N 个元素

更新 MongoDB 中嵌套实体数组中的属性

Mocking/stubbing mongoose模型保存方法

MongoDB 的 BinData(0, "e8MEnzZoFyMmD7WSHdNrFJyEk8M=") 中的0是什么意思?

在 Mongoose 中清理用户输入

pymongo 排序和 find_one 问题

mongoose递归填充

将数据插入 MongoDB - 没有错误,没有插入

Mongoose 是否真的验证了对象 ID 的存在?

MongoDB + Node JS + 基于角色的访问控制 (RBAC)