Node.js MongoDB Sil


Belgeyi Sil

Bir kaydı veya MongoDB'de çağrıldığı şekliyle belgeyi silmek için deleteOne()yöntemi kullanırız.

Yöntemin ilk parametresi, deleteOne()hangi belgenin silineceğini tanımlayan bir sorgu nesnesidir.

Not: Sorgu birden fazla belge bulursa, yalnızca ilk geçtiği yer silinir.

Örnek

"Dağ 21" adresli belgeyi silin:

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();
  });
});

Yukarıdaki kodu "demo_delete.js" adlı bir dosyaya kaydedin ve dosyayı çalıştırın:

"demo_delete.js"yi çalıştırın

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

Hangisi size bu sonucu verecektir:

1 document deleted


Birçok Sil

Birden fazla belgeyi silmek için deleteMany()yöntemi kullanın.

Yöntemin ilk parametresi, deleteMany()hangi belgelerin silineceğini tanımlayan bir sorgu nesnesidir.

Örnek

Adres "O" harfiyle başlayan tüm belgeleri silin:

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();
  });
});

Yukarıdaki kodu "demo_delete_many.js" adlı bir dosyaya kaydedin ve dosyayı çalıştırın:

"demo_delete_many.js"yi çalıştırın

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

Hangisi size bu sonucu verecektir:

2 document(s) deleted

Sonuç Nesnesi

Yöntem deleteMany(), yürütmenin veritabanını nasıl etkilediği hakkında bilgi içeren bir nesne döndürür.

Bilgilerin çoğunun anlaşılması önemli değildir, ancak nesnenin içindeki bir nesneye "sonuç" adı verilir ve bu bize yürütmenin yolunda gidip gitmediğini ve kaç belgenin etkilendiğini söyler.

Sonuç nesnesi şöyle görünür:

{ n: 2, ok: 1 }

Silinen belgelerin sayısını döndürmek için bu nesneyi kullanabilirsiniz:

Örnek

Silinen belgelerin sayısını döndür:

console.log(obj.result.n);

Bu sonucu üretecek olan:

2