MongoDB Schema Validation

স্কিমা বৈধতা বোঝা

Schema Validation

ডিফল্টরূপে MongoDB এর একটি নমনীয় স্কিমা রয়েছে। এর মানে হল যে কঠোর স্কিমা বৈধতা প্রাথমিকভাবে সেট আপ করা হয় না।

একটি সংগ্রহের সমস্ত নথি একই কাঠামো ভাগ করে তা নিশ্চিত করতে আপনি স্কিমা বৈধতা নিয়ম তৈরি করতে পারেন।

Schema Validation

MongoDB JSON স্কিমা বৈধতা সমর্থন করে। $jsonSchema অপারেটর আমাদের নথির কাঠামো নির্ধারণ করতে দেয়।

উদাহরণ

db.createCollection("posts", {
  validator: {
    $jsonSchema: {
      bsonType: "object",
      required: [ "title", "body" ],
      properties: {
        title: {
          bsonType: "string",
          description: "Title of post - Required."
        },
        body: {
          bsonType: "string",
          description: "Body of post - Required."
        },
        category: {
          bsonType: "string",
          description: "Category of post - Optional."
        },
        likes: {
          bsonType: "int",
          description: "Post like count. Must be an integer - Optional."
        },
        tags: {
          bsonType: ["string"],
          description: "Must be an array of strings - Optional."
        },
        date: {
          bsonType: "date",
          description: "Must be a date - Optional."
        }
      }
    }
  }
})

এটি বর্তমান ডাটাবেসে পোস্ট সংগ্রহ তৈরি করবে এবং সংগ্রহের জন্য JSON স্কিমা বৈধতা প্রয়োজনীয়তা নির্দিষ্ট করবে।

💡বর্ণনা:

এই স্কিমা বৈধতা নিয়ম নিম্নলিখিত নিশ্চিত করে:

  • titleএবংbodyক্ষেত্র প্রয়োজন হয়
  • titleএবংbodyটাইপ স্ট্রিং হতে হবে
  • categoryঐচ্ছিক এবং টাইপ স্ট্রিং হতে হবে
  • likesঐচ্ছিক এবং অবশ্যই পূর্ণসংখ্যার ধরন হতে হবে
  • tagsঐচ্ছিক এবং স্ট্রিং এর একটি অ্যারে হতে হবে
  • dateঐচ্ছিক এবং তারিখ টাইপ হতে হবে

অনুশীলন করুন

মঙ্গোডিবিতে স্কিমা বৈধতা নির্ধারণ করতে কোন অপারেটর ব্যবহার করা হয়?

$validateSchema
✗ ভুল! $validateSchema একটি বৈধ অপারেটর নয়
$schema
✗ ভুল! $স্কিমা একটি বৈধ অপারেটর নয়
$jsonSchema
✓ ঠিক আছে! $jsonSchema অপারেটর JSON স্কিমা বৈধতা সংজ্ঞায়িত করতে ব্যবহৃত হয়
$documentSchema
✗ ভুল! $documentSchema একটি বৈধ অপারেটর নয়