Aba Validação
A aba Validation permite a você gerenciar regras de validação de esquema para uma collection.
A validação do esquema garante que todos os documentos em uma coleção sigam um conjunto definido de regras, como a conformidade com uma forma específica ou apenas permitindo um intervalo específico de valores nos campos.

Visualizar a Validation aba
No Atlas, váGo para a Data Explorer página do seu projeto.
Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione seu projeto no menu Projects na barra de navegação.
Na barra lateral, clique em Data Explorer sob o título Database.
O Data Explorer é exibido.
Observação
Você também pode ir para a página Clusters e clicar em Data Explorer sob o título Shortcuts.
Regras de Validação
O editor de validação oferece suporte à validação de esquema JSON e à validação com expressões de query usando operadores de query. Depois de clicar no botão Update, o Atlas atualiza para exibir um documento de sua coleção que passa na validação e um documento que falha.
Validação de JSON schema
Para especificar a validação do JSON schema, use o operador $jsonSchema.
{ $jsonSchema: { required: ['name', 'borough'], // the name and borough fields are required properties: { cuisine: { bsonType: "string", description: "must be a string" } } } }
O operador $jsonSchema suporta várias palavras-chave para especificar regras de validação. Por exemplo:
O array
requireddefine os campos obrigatórios no documento.O objeto
propertiesdefine regras para campos de documentos específicos.
Considere o seguinte exemplo de validação:
{ $jsonSchema: { bsonType: "object", required: [ "address", "borough", "name" ], properties: { address: { bsonType: "object", properties: { coord: { bsonType: "array", items: [ { bsonType: "double", minimum: -180, maximum: 180, exclusiveMaximum: false, description: "must be a number in [ -180, 180 ]" }, { bsonType: "double", minimum: -90, maximum: 90, exclusiveMaximum: false, description: "must be a number in [ -90, 90 ]" } ] } }, description: "must be an object" }, borough: { bsonType: "string", enum: [ "Manhattan", "Brooklyn", "Queens", "Bronx", "Staten Island" ], description: "must be one of the enum strings" } } } }
Esta validação especifica:
A lista de campos necessários.
O bsonType para todos os campos obrigatórios.
Os valores aceitos para o campo
borough, utilizando enumeração.
Para todas as palavras-chave do $jsonSchema disponíveis, consulte a página $jsonSchema no manual do MongoDB.
Validação usando Operadores de Query
Também é possível especificar a validação utilizando operadores de query, com exceção dos seguintes operadores de query: $near, $nearSphere, $text e $where.
{ $or: [ { name: { $type: "string" } }, { borough: { bsonType: "string", enum: [ "Manhattan", "Brooklyn", "Queens", "Bronx", "Staten Island" ], description: "must be one of the enum strings" } } ] }
Usando esta validação, um dos seguintes deve ser verdadeiro:
O campo
namedeve ser string do tipo BSON.O campo
boroughdeve ser uma das strings de enumeração.
Ações e Níveis de Validação
Na parte superior, especifique uma Validation Action e um Validation Level:
A ação de validação determina se
warnaceita documentos inválidos ouerrore rejeita documentos inválidos.O nível de validação determina o quão estritamente o MongoDB aplica as regras de validação aos documentos existentes.
Stricta validação aplica suas regras a todas as inserções e atualizações de documentos.Moderatea validação só aplica suas regras a novos documentos e documentos válidos existentes. Documentos inválidos existentes não são afetados.
Para obter detalhes sobre ações de validação e níveis, consulte Especificar Regras de Validação no manual MongoDB.
Limitações
A aba Validation não está disponível se você estiver conectado ao Atlas Data Federation.