Menu Docs
Página inicial do Docs
/ / /
Java síncrono
/ /

Excluir um documento

Você pode excluir um único documento de uma collection usando o método deleteOne() em um objeto MongoCollection . O método aceita um filtro de query que corresponde ao documento que você deseja excluir. Se você não especificar um filtro, o MongoDB corresponderá ao primeiro documento da collection. O método deleteOne() exclui apenas o primeiro documento correspondente.

Este método retorna uma instância de DeleteResult que contém informações, incluindo quantos documentos foram excluídos como resultado da operação.

Se a sua operação de exclusão falhar, o driver emitirá uma exceção. Para obter mais informações sobre os tipos de exceções geradas em condições específicas, consulte a documentação da API para deleteOne(), cujo link está no final desta página.

O trecho a seguir exclui um único documento da collection movies do reconhecimento de data center sample_mflix . O exemplo usa o filtro eq() para corresponder a filmes com title correspondendo exatamente ao texto 'The Garbage Pail Kids Movie'.

Observação

Esse exemplo se conecta a uma instância do MongoDB usando um URI de conexão. Para saber mais sobre como se conectar à sua instância do MongoDB, consulte oguia de conexão .

// Deletes a document from a collection by using the Java driver
package usage.examples;
import static com.mongodb.client.model.Filters.eq;
import org.bson.Document;
import org.bson.conversions.Bson;
import com.mongodb.MongoException;
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.result.DeleteResult;
public class DeleteOne {
public static void main(String[] args) {
// Replace the uri string with your MongoDB deployment's connection string
String uri = "<connection string uri>";
try (MongoClient mongoClient = MongoClients.create(uri)) {
MongoDatabase database = mongoClient.getDatabase("sample_mflix");
MongoCollection<Document> collection = database.getCollection("movies");
Bson query = eq("title", "The Garbage Pail Kids Movie");
try {
// Deletes the first document that has a "title" value of "The Garbage Pail Kids Movie"
DeleteResult result = collection.deleteOne(query);
System.out.println("Deleted document count: " + result.getDeletedCount());
// Prints a message if any exceptions occur during the operation
} catch (MongoException me) {
System.err.println("Unable to delete due to an error: " + me);
}
}
}
}

Ao executar o exemplo, se o filtro de query que você passou na sua chamada para deleteOne() corresponder a um documento e removê-lo, você deverá ver um resultado parecido com este:

Deleted document count: 1

Se a sua query não corresponder a um documento na sua collection, a sua chamada para deleteOne() não removerá nenhum documento e retornará o seguinte:

Deleted document count: 0

Dica

Legacy API

Se você estiver usando a API herdada, consulte nossa página de perguntas frequentes para saber quais alterações devem ser feitas nesse exemplo de código.

Para obter mais informações sobre as classes e métodos mencionados nesta página, consulte a seguinte documentação da API:

  • DeleteOne()

  • DeleteResult

  • eq()

Voltar

Excluir operações