validationLevel
选项,该选项确定MongoDB在更新期间对现有文档应用验证规则的严格程度,以及validationAction
选项,该选项确定MongoDB是否应显示错误并拒绝违反验证规则的文档,或 warn
日志中的违反行为,但允许无效文档。注意推荐使用JSON模式执行模式验证。
$jsonSchema
操作查询运算符,MongoDB支持使用 其他查询运算符 查询选择器,除了$near
,[$nearSphere](https://docs.mongodb.com/manual/reference/operator/query/nearSphere/'35;操作/u nearSphere), $text
,和 $where
运算符。validationLevel
选项确定MongoDB应用验证规则的操作:validationLevel
是 strict
(默认值),MongoDB会对所有插入和更新应用验证规则。validationLevel
是 moderate
,MongoDB将验证规则应用于已满足验证条件的现有文档的插入和更新。使用 moderate
级别时,不检查对不符合验证条件的现有文档的更新是否有效。contacts
集合:contacts
集合:contacts
集合现在有一个使用 moderate
验证级别的验证器:_id
为1, MongoDB将应用验证规则,因为现有文档与条件匹配。_id
为2的文档应用验证规则,因为它不符合验证规则。validationLevel
设置为off
。validationAction
选项确定MongoDB如何处理违反验证规则的文档:validationAction
为error
(默认值),MongoDB将拒绝任何违反验证条件的插入或更新。validationAction
为warn
,MongoDB会记录任何冲突,但允许继续插入或更新。contacts2
集合:validationAction
仅为warn
,MongoDB只记录验证冲突消息并允许操作继续:admin
、local
和config
数据库中的集合指定验证器。system.*
集合指定验证器。bypassDocumentValidation
选项绕过文档验证。bypassDocumentValidation
跳过每个操作的验证: