MongoDB UpdateOne

MongoDB UpdateOne
O banco de dados MongoDB fornece vários recursos nos dados armazenados. Um dos requisitos básicos dos dados salvos é permitir qualquer modificação nele. UpdateOne e Updatemany são duas funções básicas que são aplicadas em MongoDBB. Neste artigo, a atualização é o tópico a ser discutido. Esta função atualiza o item que corresponde primeiro na coleção de acordo com a consulta que usamos, mesmo que haja várias linhas correspondentes. Em cada vez, apenas um item é atualizado.

Sintaxe

>> dB.coleção_name.UpdateOne (filtro, documento/ atributo, opções)

Agora, vamos elaborar os argumentos de UpdateOne ():

  • Filtro: ele funciona como o método find (). Usamos os critérios de seleção nesta parte.
  • Documento: ele contém a parte de atualização. Em outras palavras, o documento que você deseja substituir está escrito aqui e também o novo atributo que você deseja adicionar.
  • Opção: é uma parte opcional que pode conter o recurso UpSert.

Depois de instalar o MongoDB em seu sistema, você pode acessá -lo através do terminal simplesmente usando 'Mongo'. As etapas de pré -requisito usadas para implementar o MongoDB UpdateOne devem se conectar ao banco de dados e criar uma coleção. Algumas informações relacionadas são definidas abaixo.

Nome do banco de dados: demonstração
Coleção: Job

A coleção usada para manter os dados no MongoDB é criada através de um comando simples, criamos a coleção com o nome 'trabalho'. Um comando de criação é usado para esse fim.

>> dB.CreateCollection ('Job')

Depois de criar a coleção, podemos inserir dados nela. Em vez de usar a abordagem Instone, usamos a InsertMany, pois ela pode adicionar dados por meio de um único comando, você não precisa adicionar cada linha sempre.

>> dB.trabalho.InsertMany ([FirstName: "John", LastName: "Dew", e -mail: "[email protected] ", salário: 5000,

Da mesma forma, adicionamos 6 linhas na coleção, cada uma separada por uma vírgula. 4 documentos para cada fila de trabalho são usados. Nós atribuímos um valor a cada atributo.

Você pode ver que, depois de entrarmos em todas as linhas coletivamente, o reconhecimento é dado verdadeiro. E para cada linha e da mesma forma, os IDs são atribuídos no final coletivamente.

Você pode ver todos os dados inseridos através do encontro ().Pretty () função através do nome da coleção.

>> dB.trabalho.encontrar().bonito()

Tomamos um trecho das 4 primeiras linhas.

UpdateOne ()

Agora, usaremos a função updateOne () nos comandos para demonstrar o funcionamento desta função.

Exemplo 1: atualize um único atributo existente

Queremos modificar um campo que já está presente nas linhas da coleção. Existem várias opções de atualização. Entre eles, usamos a opção '$ set', que é usado para atribuir um valor a um novo atributo ou substituir o valor anterior por um novo.

Para buscar os dados em questão, usamos o atributo salarial na parte de busca. De acordo com a consulta, precisamos obter o resultado com um salário de 5000. Quando esta linha é recuperada, aplicamos uma condição para substituir o primeiro nome do registro por um novo nome que é 'Morgan'.

>> dB.trabalho.updateOne (Salário: 5000, $ set: FirstName: 'Morgan')

Este comando trará o primeiro registro na coleção do banco de dados de acordo com o salário especificado. O primeiro nome mais antigo era John. Depois de usar o comando, John será substituído por 'Morgan'. Ao executar o comando, você receberá novamente o reconhecimento. Isso significa que a consulta foi executada com sucesso, exibindo que o número de contas correspondentes é 1. Portanto, o mesmo será modificado. Vamos verificar o valor resultante usando o find ().Pretty () comando.

Você pode observar a mudança no primeiro nome.

Exemplo 2: Atualizar coleção adicionando um único atributo

Independentemente de substituir os dados existentes, você também pode precisar adicionar novas informações ao registro existente. Isso também é feito através do comando de atualização. Assim como o exemplo anterior, a opção $ set será usada novamente para adicionar um novo documento à coleção. A filtração será feita de acordo com o primeiro nome. Se esse nome especificado mencionado na consulta for comparado, adicionaremos um novo documento do local àquela linha especificada. Queremos adicionar o campo de localização à linha com o primeiro nome 'Toshay'.

>> dB.trabalho.UpdateOne (FirstName: "Toshay", $ set: Location: "USA")

O terminal MongoDB responderá. Aquela linha correspondente é então modificada. Veremos a modificação através da função find ().

É o segundo recorde. Portanto, um novo campo de localização junto com seu valor atribuído é adicionado.

Exemplo 3: atualize o documento aumentando o valor

Não é necessário substituir ou adicionar um novo documento sempre. Também é possível que possamos aumentar o valor que já está presente com um valor mencionando -o na consulta. Esse valor é adicionado ao anterior e, como resultado, um novo valor é gerado. Para esse fim, usamos um operador de atualização “$ inc” que se refere a incremento. Este operador é usado no lugar de '$ set' porque não queremos definir o valor, mas aumentando.

O resultado será filtrado de acordo com o primeiro nome e, em seguida, o salário dessa pessoa será aumentado em 500. O nome é 'James' e seu salário original é 7500.

>> dB.trabalho.UpdateOne (FirstName: "James", $ inc: Salário: 500)

Na execução, você observará que o salário de James se torna 8000 de 7500 através do operador $ inc.

Conclusão

MongoDB UpdateOne é a função usada para atualizar um único documento que ocorre primeiro na coleção se várias correspondências forem encontradas. Tentamos explicar os recursos e funcionalidades desta função do MongoDB. No início, descrevemos a sintaxe e, em seguida, alguns exemplos básicos são explicados para evitar qualquer ambiguidade em relação às funções desse recurso. UpdateOne oferece alguns operadores aplicados na consulta. Por exemplo, $ set e $ inc são usados ​​neste artigo para definir o novo valor para o documento e incrementar o anterior até certo ponto.