Node.js MongoDB Usuń
Usuń dokument
Aby usunąć rekord lub dokument, jak to się nazywa w MongoDB, używamy
deleteOne()
metody.
Pierwszym parametrem deleteOne()
metody jest obiekt zapytania definiujący dokument do usunięcia.
Uwaga: Jeśli zapytanie znajdzie więcej niż jeden dokument, usuwane jest tylko pierwsze wystąpienie.
Przykład
Usuń dokument z adresem „Góra 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();
});
});
Zapisz powyższy kod w pliku o nazwie „demo_delete.js” i uruchom plik:
Uruchom „demo_delete.js”
C:\Users\Your Name>node demo_delete.js
Co da ci ten wynik:
1 document deleted
Usuń wiele
Aby usunąć więcej niż jeden dokument, użyj
deleteMany()
metody.
Pierwszym parametrem deleteMany()
metody jest obiekt zapytania określający, które dokumenty należy usunąć.
Przykład
Usuń wszystkie dokumenty, których adres zaczyna się na literę „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();
});
});
Zapisz powyższy kod w pliku o nazwie „demo_delete_many.js” i uruchom plik:
Uruchom „demo_delete_many.js”
C:\Users\Your Name>node demo_delete_many.js
Co da ci ten wynik:
2 document(s) deleted
Obiekt wynikowy
Metoda deleteMany()
zwraca obiekt, który zawiera informacje o tym, jak wykonanie wpłynęło na bazę danych.
Większość informacji nie jest ważna do zrozumienia, ale jeden obiekt wewnątrz obiektu nazywa się „rezultatem”, który mówi nam, czy wykonanie przebiegło prawidłowo i ile dokumentów zostało naruszone.
Wynikowy obiekt wygląda tak:
{ n: 2, ok: 1 }
Możesz użyć tego obiektu, aby zwrócić liczbę usuniętych dokumentów:
Przykład
Zwróć liczbę usuniętych dokumentów:
console.log(obj.result.n);
Który przyniesie ten wynik:
2