MongoDB UpdateMany

MongoDB UpdateMany

MongoDB è un sistema di gestione del database open source che consente ai suoi utenti di aggiungere download e collegarli facilmente al server. Come suggerisce il nome, come altri database, archiverà i dati e consentirà agli utenti di gestirli. A tale scopo, ha diverse funzioni (i.e. updatemany ()). UpdateMany () è la funzione di riga di comando che viene utilizzata per modificare i documenti nella raccolta di MongoDB a seconda della query che abbiamo usato. La modifica è sempre correlata alla sostituzione dei dati esistenti o all'aggiunta di un nuovo campo nel record. Il nostro argomento attuale si riferisce alla funzione UpdateMany () in MongoDB. Cominciamo con l'implementazione per vedere come questo comando è paragonabile a ogni scenario.

Quando apri il terminale, ora dovresti scrivere qualsiasi comando riguardo a MongoDB. Se non sei sicuro nel database con cui sei connesso, scrivi semplicemente "DB". Questo porterà il nome del database.

>> db

Il database sarà il DB predefinito o definito dall'utente. Se non hai creato un database tutto tuo, molto probabilmente MongoDB utilizzerà il database predefinito, "Test". Ma per utilizzare il database tutto tuo, è necessario utilizzare un comando di "usa" con il nome del database.

>> usa la demo.

Quindi, la demo è il database definito dall'utente. Il terminale MongoDB risponderà a quale database viene commutato dal test al database demo.

Creazione della raccolta

Una volta terminato la connettività del database e la creazione, la tua preoccupazione si baserà sull'immissione dei dati. Simile ad altri database, MongoDB offre anche contenitori per archiviare i dati. Queste sono collezioni. Vediamo come vengono formate le raccolte usando il nome "test".

>> db.createcollection ('test')

IL createcollection Il comando con la parola chiave DB viene utilizzato per creare una raccolta insieme al nome tra parentesi. Assicurati che la raccolta sia creata nello stesso database che desideri utilizzare in futuro. Perché durante la creazione di una raccolta, il nome del database non è specificato.

La risposta di MongoDB è "OK", il che significa che la raccolta viene creata con successo senza alcuna eccezione. Avevamo già aggiunto dati alla raccolta. Tre attributi vengono aggiunti e assegnati rispettivamente con i valori. Per vedere tutti i dati, utilizzare il comando Trover ().

>> db.test.Trovare().bello()

Questo comando prenderà tutti i record della raccolta di test.

Puoi osservare che 4 righe vengono inserite nella collezione.

UpdateMeMany ()

A volte, hai inserito i dati sbagliati o devi aggiungere più campi al record. In altre parole, hai bisogno di una modifica dei dati. Quindi, viene fatto tramite il comando di aggiornamento.

MongoDB fornisce una struttura per aggiornare i documenti esistenti. Esistono due tipi per aggiornare i documenti.

  • db.collezione.aggiornamento () - Aggiorna un singolo attributo in una raccolta.
  • db.collezione.updateMeMany () - Viene utilizzato per aggiornare molti attributi tramite un singolo comando, nella raccolta.

Nota: Entrambi i tipi di aggiornamento sono utili, ma si consiglia agli sviluppatori di utilizzare UpdateManny () in quanto consuma meno tempo e rende il codice più breve.

Poiché il nostro argomento in discussione è UpdateMeMany, quindi lo andremo descrivendo la sintassi.

# db.collection_name.UpdateMany (filtro, nome dell'attributo/documento, opzioni)

Qui DB indica l'attuale database e collection_name è la raccolta su cui si desidera applicare il comando di aggiornamento. Principalmente ci sono tre argomenti nella funzione del parametro UpdateMany.

  • Filtro: Agisce come il metodo find (). Mostra i criteri di selezione per l'aggiornamento.
  • Documento: Contiene il valore che si desidera aggiungere nella riga o quello che può essere utilizzato per la sostituzione.
  • Opzioni: È un valore opzionale che può essere rimosso.

Dato che abbiamo già creato una raccolta e aggiunto i dati di esempio ad essa, applichiamo il comando updatemany sulla raccolta.

Esempio 1: aggiorna un record esistente

Questo esempio si riferisce alla modifica di un valore già esistente. Ad esempio, la parte del filtro del comando troverà l'attributo del nome. Quando viene trovata la corrispondenza, il valore della funzione di età viene sostituito.

>> db.test.UpdateMany (nome: "David", $ set: Age: 20)

In risposta al comando, MongoDB riconoscerà la domanda come vera e mostrerà che una partita è stata trovata nell'intero record. Quindi, la riga interessata viene modificata.

Per vedere il record useremo il comando find ()

>> db.test.Trovare().bello()

Di conseguenza, noterai che l'età di David aveva 26 anni quando è stato inserito il record ma sull'applicazione della funzione UpdateMeMany (), la funzione di età viene sostituita con 20.

Esempio 2: aggiungi un nuovo attributo al record esistente

Ora aggiorneremo un singolo campo nel record di più di una persona. In precedenza, abbiamo usato un nome che è un attributo univoco. Specifica solo una sola persona. Per indirizzare di più, abbiamo selezionato un attributo sezione. Questa volta non modificheremo il record esistente, ma quello nuovo verrà aggiunto. L'attributo è "squadra" con un valore. Questo verrà aggiunto solo in quelle righe che hanno la sezione A.

>> db.test.UpdateMany (Sezione: "A", $ set: team: "frutta")

Il comando restituirà che 2 righe vengono modificate dopo aver trovato la partita. Usando la funzione Find (), otterrai:

Esempio 3: modifica tutti i record

Se si desidera aggiungere un nuovo campo in ogni riga, non utilizziamo alcun attributo nel filtro del comando ma vengono menzionate parentesi vuote.

>> db.test.UpdateMany (, $ set: idoneità: "true")

Quindi il nuovo attributo di ammissibilità verrà aggiunto in tutte le righe.

Conclusione

Questa discussione è stata quella di fornire l'uso del comando updatemany () nel database MongoDB. Abbiamo dato una breve introduzione al database, alle raccolte e all'inserimento di dati perché sono i prerequisiti per l'applicazione del comando updatemany (). Il comando di aggiornamento può essere ulteriormente utilizzato in due sottocampi; Update () e updateMany (). Updatemany viene utilizzato in dettaglio utilizzando alcuni esempi che aiutano ad apprendere e comprendere questo concetto.