Du kannst es so machen. Dies ist nur ein Beispiel.
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"
})
-
Verwenden Sie zum Angeben von Validierungsregeln beim Erstellen einer neuen Sammlung
db.createCollection()
mit demvalidator
Möglichkeit. Verwenden Sie dann$jsonSchema
in einem Dokumentvalidator
um das angegebene Schema beiinsert
zu erzwingen undupdate
Operationen. -
ValidationLevel-Option, die festlegt, wie streng MongoDB während einer Aktualisierung Validierungsregeln auf vorhandene Dokumente anwendet, und
-
ValidationAction-Option, die festlegt, ob MongoDB Dokumente, die gegen die Validierungsregeln verstoßen, zurückweisen und ablehnen oder im Protokoll vor Verstößen warnen, aber ungültige Dokumente zulassen soll.
-
Verwenden Sie
collMod
, um einer vorhandenen Sammlung eine Dokumentvalidierung hinzuzufügen Befehl mit demvalidator
Option. -
Wenn Sie einer Sammlung eine Validierung hinzufügen, werden vorhandene Dokumente bis zur Änderung keiner Validierungsprüfung unterzogen.
Bitte lesen Sie diese Links durch :-
https://docs.mongodb.com/manual/core/schema-validation/
https://docs.mongodb.com/manual/ reference/operator/query/jsonSchema/#op._S_jsonSchema