← Questões de Banco de Dados

Banco de Dados · FGV · 2022

Questão comentada de Banco de Dados

Sobre o MongoDB v5.0, considere as afirmativas a seguir. I. Todos os documentos de uma coleção (collection) devem possuir o mesmo número de campos (fields). II. Um campo presente em diferentes documentos de uma collection pode ter diferentes tipos de dados ao longo dos documentos. III. MongoDB oferece a capacidade de validar esquemas durante operações de inserção (insertion) e atualização (update). Está correto o que se afirma em:

Gabarito: D

O MongoDB é um banco NoSQL orientado a documentos, e isso muda bastante a lógica que você conhece dos bancos relacionais. Em vez de exigir tabelas rigidamente padronizadas, ele trabalha com coleções de documentos BSON, o que dá flexibilidade para cada documento ter campos diferentes. Ou seja: não existe regra de que todos os documentos da mesma collection tenham o mesmo número de fields. Isso derruba a afirmativa I. Outra característica importante é que um mesmo campo pode aparecer em documentos diferentes com tipos de dados distintos, porque o MongoDB não impõe, por padrão, um tipo fixo para cada campo da coleção. Então você pode encontrar, por exemplo, um campo "idade" como número em um documento e como string em outro, embora isso possa atrapalhar consultas e integridade lógica. Assim, a afirmativa II está correta. Além disso, o MongoDB v5.0 oferece validação de esquema por meio de regras definidas na coleção, usando recursos como JSON Schema e validações aplicadas em inserções e atualizações. Isso permite exigir formatos mínimos sem transformar o banco em um modelo relacional engessado. Logo, a afirmativa III também está correta. Portanto, o gabarito D está certo porque apenas II e III correspondem ao comportamento do MongoDB: flexibilidade de tipos e validação opcional de esquema, enquanto a exigência de mesmo número de campos em todos os documentos é típica do mundo relacional, não do MongoDB.

Continue treinando

Questões relacionadas