我想单独更新数据库的验证规则。
例如,使用此example中的以下集合:
db.createCollection( "contacts",
{ validator: { phone: { $type: "string" } }
} )
然后我们可以查看验证规则(为了简洁而截断):
db.getCollectionInfos({name:"contacts"})
"validator" : {
"phone" : {
"$type" : "string"
}
}
如果我决定添加新验证:
db.runCommand( {
collMod: "contacts",
validator: { email: { $exists: true } }
} )
原始验证已经消失:
db.getCollectionInfos({name:"contacts"})
"validator" : {
"email" : {
"$exists" : true
}
},
是否可以跨多个查询维护验证?这种情况的用例是随着时间的推移可能会有许多验证规则应用于集合,并且每次重新应用所有验证似乎效率低下。或许我正在以错误的方式思考这个问题?