Skip to content

Latest commit

 

History

History
41 lines (25 loc) · 2.04 KB

3-4-update.md

File metadata and controls

41 lines (25 loc) · 2.04 KB

Update

updateOne(filter, data)

O comando updateOne(filter, data) faz a alteração de apenas um documento. Como primeiro parâmetro, devemos passar um objeto como filtro, semelhante ao filtro utilizado nos métodos find(). O segundo parâmetro será os dados a serem atualizados. Note que, antes do objeto, você deve usar o operador atômico $set, da seguinte forma:

> db.users.updateOne({"_id" : ObjectId("606f980f74ef57c2fec8495e")}, {$set: {"password": "nova-senha"}})
{ "acknowledged" : true, "matchedCount" : 1, "modifiedCount" : 1 }

Obs: Tente utilizar sempre o _id como filtro, para garantir que atualizará o item certo.

updateMany(filter, data)

O comando updateMany(filter, data) faz a alteração de vários documentos. Como primeiro parâmetro, devemos passar um objeto como filtro, semelhante ao filtro utilizado nos métodos find(). O segundo parâmetro será os dados a serem atualizados. Note que, antes do objeto, você deve usar o operador atômico $set, da seguinte forma:

> db.users.updateMany({"password": "pswd"}, { $set: {"bday": "01/01/2000"} })
{ "acknowledged" : true, "matchedCount" : 2, "modifiedCount" : 2 }

replaceOne(filter, data)

O comando replaceOne(filter, data) substitui todo um documento por um novo. Como primeiro parâmetro, devemos passar um objeto como filtro, semelhante ao filtro utilizado nos métodos find(). O segundo parâmetro será os dados a serem atualizados. Dessa vez, o operador atômico $set não é necessário:

> db.users.replaceOne({"_id" : ObjectId("606f980f74ef57c2fec8495e")}, {"password": "nova-senha"})
{ "acknowledged" : true, "matchedCount" : 1, "modifiedCount" : 1 }

Obs: Tente utilizar sempre o _id como filtro, para garantir que substituirá o item certo.


Próximo sub-tópico: Comandos Delete

Próximo tópico: Primeiro projeto com Node e MongoDB

Voltar para a Home