Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home

Borrar un documento

Puedes borrar un solo documento de una colección utilizando el deleteOne() método en un objeto MongoCollection. El método acepta un filtro de query que coincide con el documento que deseas borrar. Si no especificas un filtro, MongoDB empareja el primer documento en la colección. El método deleteOne() solo elimina el primer documento que coincide.

Este método devuelve una instancia de DeleteResult que contiene información, incluyendo cuántos documentos fueron eliminados como resultado de la operación.

Si tu operación de eliminación falla, el controlador genera una excepción. Para obtener más información sobre los tipos de excepciones generadas bajo condiciones específicas, consultar la documentación de la API para deleteOne(), enlazada en la parte inferior de esta página.

El siguiente snippet borra un único documento de la colección movies de la base de datos sample_mflix. El ejemplo utiliza el filtro eq() para hacer coincidir las películas con el title que coincide exactamente con el texto 'The Garbage Pail Kids Movie'.

Nota

Este ejemplo se conecta a una instancia de MongoDB utilizando un URI de conexión. Para obtener más información sobre cómo conectarse a tu instancia de MongoDB, consulta el guía de conexión.

import com.mongodb.MongoException
import com.mongodb.client.model.Filters
import com.mongodb.kotlin.client.coroutine.MongoClient
import kotlinx.coroutines.runBlocking
data class Movie(val title: String)
fun main() = runBlocking {
// Replace the uri string with your MongoDB deployment's connection string
val uri = "<connection string uri>"
val mongoClient = MongoClient.create(uri)
val database = mongoClient.getDatabase("sample_mflix")
val collection = database.getCollection<Movie>("movies")
val query = Filters.eq(Movie::title.name, "The Garbage Pail Kids Movie")
try {
val result = collection.deleteOne(query)
println("Deleted document count: " + result.deletedCount)
} catch (e: MongoException) {
System.err.println("Unable to delete due to an error: $e")
}
mongoClient.close()
}

Cuando ejecutes el ejemplo, si el filtro de query que has pasado en tu llamada a deleteOne() coincide con un documento y lo remueve, deberías ver una salida similar a esta:

Deleted document count: 1

Si tu filtro de query no coincide con un documento en tu colección, tu llamada a deleteOne() no remueve ningún documento y devuelve lo siguiente:

Deleted document count: 0

Para obtener información adicional sobre las clases y métodos mencionados en esta página, revisa la siguiente documentación API:

  • deleteOne()

  • DeleteResult

  • eq()