MongoDB中删除了多少文档

ggr*_*ner 2 mongodb spring-data

使用Spring Data(1.1.0.M1)有一种方法可以确定删除了多少文档?

目前我remove()MongoTemplate类上使用该方法,但它不返回任何有关该操作的信息.

如果没有通过MongoTemplate,是否有不同的方法来删除文件,并找出删除了多少文件?

Asy*_*sky 9

在MongoDB中编写文档(包括删除)时,可以调用getLastError()来查看上次写操作的效果.

您遇到的问题是,当没有错误时,您仍然想知道有多少对象(文档)受到操作的影响.

在shell中,您可以通过检查返回的对象来查看详细信息getLastErrorObj().在Java中,Mongo Java驱动程序提供了相同的方法.

在删除操作的情况下,该字段"n"将对应于受影响的文档的数量.这是一个例子的小片段:

import com.mongodb.WriteResult;
...
   WriteResult wr = collection.remove(new BasicDBObject());  // removes everything
   System.out.println(wr.getN());        // prints the number of removed documents
Run Code Online (Sandbox Code Playgroud)