MongoDB 模式验证


模式验证

默认情况下,MongoDB 具有灵活的模式。这意味着最初没有设置严格的模式验证。

可以创建模式验证规则,以确保集合中的所有文档共享相似的结构。


模式验证

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."
        }
      }
    }
  }
})
亲自试一试 »

这将创建posts当前数据库中的集合并指定该集合的 JSON 架构验证要求。