Я успешно выполнил проверку схемы коллекции ( dbSetting ), используя следующие команды:
db.runCommand(
{
collMod: "dbSetting",
validator: {
$jsonSchema: {
bsonType: "object",
required: ["solutionType", "settingType"],
properties: {
solutionType: {
enum: ["coverClassify", "sandDetect", "beltConveyor", "fiberSensing"],
description: "solutionType can only be the one of values in the enum"
},
settingType: {
enum: ["logDataLimit"],
description: "settingType can only be the one of values in the enum"
},
limit: {
bsonType: ["long", "double", "int", "decimal"],
minimum: 1,
description: "limit must be double from 1 up to Double.Max"
},
tail: {
bsonType: "int",
minimum: 0,
maximum: 9999,
description: "tail must be an integer from 0 - 999"
}
}
}
},
validationLevel: "strict"
}
);
Я использую Robomon go Shell для выполнения вышеуказанной команды. Пожалуйста, смотрите изображение ниже
Однако каждый раз, когда я добавляю в него действительный документ, даже если коллекция пуста, у меня всегда появляется ошибка ниже:
Есть ли способ определить причину этого root? Я не могу точно определить, какая именно ошибка в поле у меня была.
Спасибо.