阅读量:0
MongoDB的文档验证功能可以在集合创建时指定验证规则。通过指定验证规则,可以确保插入的文档满足特定的条件。以下是使用文档验证功能的步骤:
- 在创建集合时,通过指定验证规则来启用文档验证功能。可以使用以下命令来创建带有验证规则的集合:
db.createCollection("myCollection", { validator: { $jsonSchema: { bsonType: "object", required: ["name", "gender", "age"], properties: { name: { bsonType: "string", description: "must be a string and is required" }, gender: { bsonType: "string", description: "must be a string and is required" }, age: { bsonType: "int", minimum: 0, description: "must be a positive integer and is required" } } } } })
上面的代码创建了一个名为myCollection
的集合,并定义了一个验证规则,要求插入的文档必须包含name
、gender
和age
字段,并且name
和gender
必须是字符串类型,age
必须是正整数。
- 插入文档时,如果文档不满足验证规则,MongoDB会返回一个错误。例如,如果插入一个缺少
age
字段的文档:
db.myCollection.insertOne({ name: "Alice", gender: "female" })
将会返回以下错误:
WriteError({ "index" : 0, "code" : 121, "codeName" : "DocumentValidationFailure", "errmsg" : "Document failed validation", "op" : { "name" : "Alice", "gender" : "female" } })
通过使用文档验证功能,可以确保插入的文档满足特定的条件,提高数据的完整性和一致性。