FC ConcursosFC Concursos

Questão FC369683

Observe a consulta SQL a seguir. ALTER TABLE Processos ADD data_criacao DATETIME; A consulta apresentada que corresponde à consulta MongoDB:

Outros Tipos e Modelos de Bancos de Dados

FGV · 2025

Observe a consulta SQL a seguir.

 

ALTER TABLE Processos

ADD data_criacao DATETIME;

 

A consulta apresentada que corresponde à consulta MongoDB:

  1. db.Processos.updateMany({ },

      {$set:{data_criacao:new Date()}})

  2. db.Processos.add({all()},

      {$set:{data_criacao:new Date()}})

  3. db.Processos.insertOne({find()},

      {$set:{data_criacao:new Date()}})

  4. db.Processos.createField({ },

      {$set:{data_criacao:new Date()}})

  5. db.Processos.addField({find()},

      {$unset:{data_criacao:new Date()}})

Mostrar resposta e comentário

Gabarito

A

Comentário do professor

A instrução SQL adiciona uma coluna a todos os registros; em MongoDB isso é feito atualizando documentos para incluir um novo campo. A consulta correta usa db.Processos.updateMany para alterar vários documentos de uma só vez.

Na expressão db.Processos.updateMany({ }, {$set:{data_criacao:new Date()}}) o filtro { } corresponde a todos os documentos da coleção. O operador $set adiciona o campo data_criacao quando ele não existe ou o sobrescreve se já existir.

new Date() cria um valor de data/hora em JavaScript, que é armazenado como BSON Date em MongoDB — equivalente a um tipo DATETIME em SQL.

Como o MongoDB é schemaless, não há DDL; a operação atualiza dados existentes. Se quiser apenas adicionar o campo quando ausente, use um filtro como {data_criacao: {$exists: false}} para evitar sobrescrever valores já definidos.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo