Node.js MongoDB Odstranit


Smazat dokument

Pro smazání záznamu nebo dokumentu, jak se tomu říká v MongoDB, používáme deleteOne()metodu.

Prvním parametrem deleteOne()metody je objekt dotazu definující, který dokument se má odstranit.

Poznámka: Pokud dotaz najde více než jeden dokument, odstraní se pouze první výskyt.

Příklad

Smažte dokument s adresou „Mountain 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();
  });
});

Uložte výše uvedený kód do souboru s názvem „demo_delete.js“ a spusťte soubor:

Spusťte "demo_delete.js"

C:\Users\Your Name>node demo_delete.js

Což vám dá tento výsledek:

1 document deleted


Smazat mnoho

Chcete-li odstranit více než jeden dokument, použijte deleteMany()metodu.

Prvním parametrem deleteMany()metody je objekt dotazu definující, které dokumenty se mají odstranit.

Příklad

Smažte všechny dokumenty, jejichž adresa začíná písmenem „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();
  });
});

Uložte výše uvedený kód do souboru s názvem „demo_delete_many.js“ a spusťte soubor:

Spusťte "demo_delete_many.js"

C:\Users\Your Name>node demo_delete_many.js

Což vám dá tento výsledek:

2 document(s) deleted

Objekt výsledku

Metoda deleteMany()vrací objekt, který obsahuje informace o tom, jak provedení ovlivnilo databázi.

Většině informací není důležité porozumět, ale jeden objekt uvnitř objektu se nazývá „výsledek“, který nám říká, zda provedení proběhlo v pořádku a kolik dokumentů bylo ovlivněno.

Výsledný objekt vypadá takto:

{ n: 2, ok: 1 }

Tento objekt můžete použít k vrácení počtu smazaných dokumentů:

Příklad

Vrátit počet smazaných dokumentů:

console.log(obj.result.n);

Což povede k tomuto výsledku:

2