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