MongoDB'de Birincil Anahtar nedir?
MongoDB'de, koleksiyonun birincil anahtarı olarak _id alanı, böylece her belge koleksiyonda benzersiz bir şekilde tanımlanabilir. _İd alanı benzersiz bir ObjectID değeri içerir.
Koleksiyona belge eklerken varsayılan olarak, alan adında _id ile bir alan adı eklemezseniz, MongoDB aşağıda gösterildiği gibi otomatik olarak bir Nesne kimliği alanı ekleyecektir.
Bir koleksiyondaki belgeleri sorguladığınızda, koleksiyondaki her belge için ObjectId'yi görebilirsiniz.
Koleksiyon oluşturulduğunda MongoDB'nin _id Alanını oluşturmadığından emin olmak istiyorsanız ve koleksiyonun _id'si olarak kendi kimliğinizi belirtmek istiyorsanız, koleksiyonu oluştururken bunu açıkça tanımlamanız gerekir.
Açıkça bir kimlik alanı oluştururken, adında _id ile oluşturulması gerekir.
Bunu nasıl başarabileceğimize dair bir örneğe bakalım.
db.Employee.insert({_id:10, "EmployeeName" : "Smith"})
Kod Açıklaması:
- Koleksiyondaki ilk belgeyi oluşturduğumuzu varsayıyoruz ve dolayısıyla yukarıdaki ifadede koleksiyonu oluştururken, açıkça _id alanını tanımlıyoruz ve bunun için bir değer tanımlıyoruz.
Komut başarıyla yürütülürse ve şimdi koleksiyondaki belgeleri görüntülemek için find komutunu kullanırsanız, aşağıdaki Çıktı gösterilecektir
Çıktı:
Çıktı, koleksiyonu oluştururken tanımladığımız _id alanının artık koleksiyon için birincil anahtar olarak kullanıldığını açıkça gösteriyor.