MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Làm cách nào để thực thi kiểm tra kiểu cho một giá trị của tài liệu trong MongoDB?

Bạn có thể làm điều đó như thế này. Đây chỉ là một ví dụ.

db.createCollection( "people" , {
   validator: {
     $jsonSchema: {
        bsonType: "object",
        additionalProperties: false, //wont't allow additional properties to be added, Use if you want to restrict people from adding extra fields.
 required: ["name","age"], //document must contain these fields, else operation will fail/log warning depending on `validationLevel` and `validationAction`
        properties: {
           _id : {
              bsonType: "objectId" },
           name: {
              bsonType: "string", //type of name
              description: "required and must be a string" },
           age: {
              bsonType: "int", //type of age
              minimum: 0,
              maximum: 100,
              description: "required and must be in the range 0-100" }
        }
     }},
     validationLevel: "moderate",
     validationAction: "error"
})
  • Để chỉ định các quy tắc xác thực khi tạo một bộ sưu tập mới, hãy sử dụng db.createCollection() với validator quyền mua. Sau đó, sử dụng $jsonSchema trong một tài liệu validator để thực thi lược đồ được chỉ định trên insertupdate hoạt động.

  • Tùy chọn validationLevel, xác định mức độ nghiêm ngặt của MongoDB áp dụng các quy tắc xác thực cho các tài liệu hiện có trong quá trình cập nhật và

  • Tùy chọn validationAction, xác định xem MongoDB có nên lỗi và từ chối các tài liệu vi phạm quy tắc xác thực hoặc cảnh báo về các vi phạm trong nhật ký nhưng cho phép các tài liệu không hợp lệ hay không.

  • Để thêm xác thực tài liệu vào bộ sưu tập hiện có, hãy sử dụng collMod lệnh với validator tùy chọn.

  • Khi bạn thêm xác thực vào một bộ sưu tập, các tài liệu hiện có sẽ không trải qua quá trình kiểm tra xác thực cho đến khi sửa đổi.

Vui lòng đọc qua các liên kết sau:-

https://docs.mongodb.com/manual/core/schema-validation/

https://docs.mongodb.com/manual/ tham chiếu / operator / query / jsonSchema / # op._S_jsonSchema




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Dân cư ở Mongoose

  2. Dữ liệu mùa xuân MongoDb:MappingMongoConverter loại bỏ _class

  3. Ngăn chặn hoảng loạn thời gian chạy trong bson.ObjectIdHex

  4. Tại sao PyMongo 3 lại cho ServerSelectionTimeoutError?

  5. Cần tìm giá trị xuất hiện thường xuyên nhất của một trường trong một tổng thể