Visualizar regras de validação existentes
Nesta página
Você pode exibir as regras de validação de uma coleção para determinar quais restrições são impostas aos documentos e como o MongoDB lida com documentos inválidos quando eles ocorrem.
Para visualizar as regras de validação de uma coleção, use o método db.getCollectionInfos()
ou o comando de banco de dados de dados listCollections
.
Ambos os comandos retornam as mesmas informações, mas o formato de saída difere entre cada comando.
Pré-requisitos
Para executar os exemplos nesta página, crie uma coleção students
com regras de validação. Para mais informações, consulte Especificar Validação de JSON schema.
Exemplo: db.getCollectionInfos()
sintaxe
O comando a seguir usadb.getCollectionInfos()
para retornar as regras de validação para a coleção students
:
db.getCollectionInfos( { name: "students" } )[0].options.validator
A saída se assemelha ao seguinte objeto de validação:
{ '$jsonSchema': { bsonType: 'object', required: [ 'name', 'year', 'major', 'address' ], properties: { name: { bsonType: 'string', description: 'must be a string and is required' }, year: { bsonType: 'int', minimum: 2017, maximum: 3017, description: 'must be an integer in [ 2017, 3017 ] and is required' }, gpa: { bsonType: [ 'double' ], description: 'must be a double if the field exists' } } } }
Observação
Ação de validação e nível não incluídos por padrão
Se validationAction
e validationLevel
não estiverem explicitamente definidos, db.getCollectionInfos()
não incluirá esses campos em sua saída.
Exemplo: listCollections
sintaxe
O comando a seguir usalistCollections
para retornar as regras de validação para a coleção students
:
db.runCommand ( { listCollections: 1, filter: { name: "students" } } )
A saída se assemelha ao seguinte objeto:
{ cursor: { id: Long("0"), ns: 'test.$cmd.listCollections', firstBatch: [ { name: 'students', type: 'collection', options: { validator: { '$jsonSchema': { bsonType: 'object', required: [ 'name', 'year', 'major', 'address' ], properties: { name: { bsonType: 'string', description: 'must be a string and is required' }, gpa: { bsonType: [ 'double' ], description: 'must be a double if the field exists' } } }, validationAction: 'warn' } }, info: { readOnly: false, uuid: UUID("bf560865-5879-4ec1-b389-f77a03abbc5a") }, idIndex: { v: 2, key: { _id: 1 }, name: '_id_' } } ] }, ok: 1 }