Eliminar Node.js MongoDB
Eliminar documento
Para borrar un registro, o documento como se le llama en MongoDB, usamos el
deleteOne()
método.
El primer parámetro del deleteOne()
método es un objeto de consulta que define qué documento eliminar.
Nota: Si la consulta encuentra más de un documento, solo se elimina la primera aparición.
Ejemplo
Elimine el documento con la dirección "Montaña 21":
var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/";
MongoClient.connect(url, function(err, db) {
if (err) throw err;
var dbo = db.db("mydb");
var myquery = { address: 'Mountain 21' };
dbo.collection("customers").deleteOne(myquery, function(err, obj) {
if (err) throw err;
console.log("1
document deleted");
db.close();
});
});
Guarde el código anterior en un archivo llamado "demo_delete.js" y ejecute el archivo:
Ejecute "demo_delete.js"
C:\Users\Your Name>node demo_delete.js
Lo que te dará este resultado:
1 document deleted
Eliminar muchos
Para eliminar más de un documento, utilice el
deleteMany()
método.
El primer parámetro del deleteMany()
método es un objeto de consulta que define qué documentos eliminar.
Ejemplo
Elimine todos los documentos donde la dirección comience con la letra "O":
var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/";
MongoClient.connect(url, function(err, db) {
if (err) throw err;
var dbo = db.db("mydb");
var myquery = { address: /^O/ };
dbo.collection("customers").deleteMany(myquery, function(err, obj) {
if (err) throw err;
console.log(obj.result.n + "
document(s) deleted");
db.close();
});
});
Guarde el código anterior en un archivo llamado "demo_delete_many.js" y ejecute el archivo:
Ejecute "demo_delete_many.js"
C:\Users\Your Name>node demo_delete_many.js
Lo que te dará este resultado:
2 document(s) deleted
El objeto de resultado
El deleteMany()
método devuelve un objeto que contiene información sobre cómo la ejecución afectó a la base de datos.
No es importante comprender la mayor parte de la información, pero un objeto dentro del objeto se llama "resultado", que nos dice si la ejecución fue correcta y cuántos documentos se vieron afectados.
El objeto de resultado se ve así:
{ n: 2, ok: 1 }
Puede usar este objeto para devolver la cantidad de documentos eliminados:
Ejemplo
Devuelve el número de documentos eliminados:
console.log(obj.result.n);
Lo que producirá este resultado:
2