10.5. Atualizando documentos no MongoDB: Atualizando documentos embutidos no MongoDB

Página 49

Atualizar documentos no MongoDB é uma tarefa essencial para qualquer desenvolvedor de banco de dados. No capítulo 10.5 do nosso e-book, vamos nos concentrar em como atualizar documentos embutidos no MongoDB, uma tarefa que pode parecer complexa à primeira vista, mas com a compreensão correta se torna bastante simples.

Primeiro, vamos entender o que são documentos embutidos. No MongoDB, os documentos podem conter subdocumentos ou documentos embutidos. Esses documentos embutidos podem ser pensados como tabelas dentro de tabelas em um banco de dados relacional. Eles são úteis quando queremos armazenar informações relacionadas de uma maneira mais organizada e eficiente.

Para atualizar documentos embutidos no MongoDB, usamos o operador de atualização $set. Este operador substitui o valor de um campo existente por um novo valor. Se o campo não existir, o operador $set adicionará um novo campo com o valor especificado.

Aqui está um exemplo de como usamos o operador $set para atualizar um documento embutido:

db.collection.update(
   { "_id": 1 },
   { $set:
      {
        "nome_do_campo": "novo_valor"
      }
   }
)

No exemplo acima, estamos atualizando o valor do campo 'nome_do_campo' para 'novo_valor' no documento com _id 1 na coleção especificada.

Se quisermos atualizar um campo dentro de um documento embutido, a sintaxe seria um pouco diferente. Precisamos especificar o caminho para o campo no documento embutido. Aqui está um exemplo:

db.collection.update(
   { "_id": 1 },
   { $set:
      {
        "documento_embutido.campo": "novo_valor"
      }
   }
)

No exemplo acima, estamos atualizando o valor do campo dentro do documento embutido 'documento_embutido' para 'novo_valor' no documento com _id 1 na coleção especificada.

É importante notar que o operador $set não cria o documento embutido se ele não existir. Se quisermos que o MongoDB crie o documento embutido se ele não existir, precisamos usar o operador $upsert. Aqui está um exemplo de como usamos o operador $upsert:

db.collection.update(
   { "_id": 1 },
   { $set:
      {
        "documento_embutido.campo": "novo_valor"
      }
   },
   { upsert: true }
)

No exemplo acima, se o documento com _id 1 não existir na coleção especificada, o MongoDB criará um novo documento com o campo 'documento_embutido.campo' definido como 'novo_valor'.

Atualizar documentos embutidos no MongoDB é uma tarefa comum e essencial no desenvolvimento de banco de dados. Com a compreensão correta dos operadores de atualização e a sintaxe correta, você pode atualizar documentos embutidos com facilidade e eficiência.

Espero que este capítulo tenha esclarecido suas dúvidas sobre a atualização de documentos embutidos no MongoDB. No próximo capítulo, exploraremos como deletar documentos no MongoDB. Fique ligado!

Now answer the exercise about the content:

Qual operador é usado para atualizar documentos embutidos no MongoDB e qual é a sua função?

You are right! Congratulations, now go to the next page

You missed! Try again.

Next page of the Free Ebook:

5010.6. Atualizando documentos no MongoDB: Atualização condicional de documentos no MongoDB

Earn your Certificate for this Course for Free! by downloading the Cursa app and reading the ebook there. Available on Google Play or App Store!

Get it on Google Play Get it on App Store

+ 6.5 million
students

Free and Valid
Certificate with QR Code

48 thousand free
exercises

4.8/5 rating in
app stores

Free courses in
video, audio and text