Substituir um documento
Você pode substituir um único documento usando o arquivo collection.replaceOne() método. replaceOne()
aceita um documento de consulta e um documento de substituição. Se a query corresponder a um documento na collection, ela substituirá o primeiro documento que corresponde à query pelo documento de substituição fornecido. Essa operação remove todos os campos e valores do documento original e os substitui pelos campos e valores do documento de substituição. O valor do campo _id
permanece o mesmo, a menos que você especifique explicitamente um novo valor para _id
no documento de substituição.
Você pode especificar opções adicionais, como upsert
, utilizando o parâmetro opcional options
. Se você definir o campo de opção upsert
como true
, o método inserirá um novo documento se nenhum documento corresponder à consulta.
O método replaceOne()
lança uma exceção se ocorrer um erro durante a execução. Por exemplo, se você especificar um valor que viole uma regra de índice única, o replaceOne()
lançará um duplicate key error
.
Observação
Se o aplicativo exigir o documento após a atualização, use o método collection.findOneAndReplace() , que possui uma interface semelhante a replaceOne()
. Você pode configurar o findOneAndReplace()
para gerar o documento correspondente original ou o documento de substituição.
Exemplo
Observação
Você pode utilizar este exemplo para se conectar a uma instância do MongoDB e interagir com um banco de dados que contém dados de amostra. Para saber mais sobre como se conectar à sua instância do MongoDB e carregar um conjunto de dados de amostra, consulte o Guia de exemplos de uso.
Se você executar o exemplo anterior, verá a seguinte saída:
Modified 1 document(s)