पाठ 4 / 22

कलेक्शन और _id फ़ील्ड

कलेक्शन डॉक्यूमेंट को समूहित करता है; _id हर डॉक्यूमेंट को विशिष्ट रूप से पहचानता है।

कलेक्शन बनाम टेबल

कलेक्शन संबंधित डॉक्यूमेंट को समूहित करता है, टेबल जैसा। पर टेबल के विपरीत, एक ही कलेक्शन के डॉक्यूमेंट के फ़ील्ड एक जैसे होना ज़रूरी नहीं।

टेबल → कलेक्शन, पंक्ति → डॉक्यूमेंट

मोटे तौर पर: database ↔ database, table ↔ collection, row ↔ document, column ↔ field।

_id फ़ील्ड

हर डॉक्यूमेंट को एक विशिष्ट _id मिलता है — अगर आप न दें तो मोंगोडीबी अपने-आप ObjectId बना देता है।

db.users.findOne()

Output:

{
  _id: ObjectId("65f1a2b3c4d5e6f7a8b9c0d1"),
  name: "Ada Lovelace"
}

त्वरित जाँच: अगर आप बिना _id के डॉक्यूमेंट इन्सर्ट करें तो क्या होता है?

  • इन्सर्ट विफल हो जाता है
  • मोंगोडीबी अपने-आप एक ObjectId बना देता है
  • _id null रह जाता है
Answer

मोंगोडीबी अपने-आप एक ObjectId बना देता है — मोंगोडीबी हमेशा एक विशिष्ट _id सुनिश्चित करता है, न दिए जाने पर ObjectId बना देता है।