MongoDB UpdateOne

MongoDB UpdateOne
Die MongoDB -Datenbank liefert mehrere Funktionen für die gespeicherten Daten. Eine der grundlegenden Anforderungen der gespeicherten Daten besteht darin, eine Änderung zu ermöglichen. UpdateOne und UpdateMany sind zwei grundlegende Funktionen, die in MongoDB angewendet werden. In diesem Artikel ist UpdateOne das Thema, das zu erörtert werden muss. Diese Funktion aktualisiert das Element, das zuerst in der Sammlung gemäß der von uns verwendeten Abfrage übereinstimmt, auch wenn mehrere Zeilen übereinstimmen. Zu einem Zeitpunkt wird nur ein Artikel aktualisiert.

Syntax

>> db.Collection_Name.UpdateOne (Filter, Dokument/ Attribut, Optionen)

Lassen Sie uns nun die Argumente von UpdateOne () ausarbeiten:

  • Filter: Es funktioniert wie die Find () -Methode. Wir verwenden die Auswahlkriterien in diesem Teil.
  • Dokument: Es enthält den Aktualisierungsteil. Mit anderen Worten, das Dokument, das Sie ersetzen möchten, ist hier geschrieben und auch das neue Attribut, das Sie hinzufügen möchten.
  • Option: Es ist ein optionaler Teil, der die Upsert -Funktion enthalten kann.

Sobald Sie MongoDB in Ihrem System installiert haben, können Sie über das Terminal darauf zugreifen, indem Sie einfach "Mongo" verwenden. Die Voraussetzungen, die zur Implementierung von MongoDB -Updateon verwendet werden, können eine Verbindung zum DB herstellen und eine Sammlung erstellen. Einige verwandte Informationen sind unten definiert.

Datenbankname: Demo
Sammlung: Job

Die Sammlung, mit der Daten in MongoDB aufbewahrt werden, wird über einen einfachen Befehl erstellt. Wir haben die Sammlung mit dem Namen "Job" erstellt. Für diesen Zweck wird ein Befehl erstellen.

>> db.CreateCollection ('Job')

Nachdem Sie die Sammlung erstellt haben, können wir Daten in sie eingeben. Anstatt den InsertOne -Ansatz zu verwenden, haben wir InsertMany verwendet, da er Daten über einen einzelnen Befehl hinzufügen kann. Sie müssen nicht jedes Mal jede Zeile hinzufügen.

>> db.Arbeit.InsertMany ([FirstName: "John", Lastname: "Dew", E -Mail: "[email protected] ", Gehalt: 5000,

In ähnlicher Weise haben wir 6 Zeilen in der Sammlung hinzugefügt, die jeweils durch ein Komma getrennt sind. 4 Dokumente für jede Jobzeile werden verwendet. Wir haben jedem Attribut einen Wert zugewiesen.

Sie können sehen, dass die Bestätigung der Bestätigung wahr wird. Und für jede Zeile und ähnlich werden IDs am Ende gemeinsam zugeteilt.

Sie können alle eingegebenen Daten über den Find () sehen.Pretty () Funktion durch den Sammlungsnamen.

>> db.Arbeit.finden().hübsch()

Wir haben einen Ausschnitt der ersten 4 Reihen genommen.

UpdateOne ()

Jetzt werden wir die Funktion updateOne () in den Befehlen verwenden, um die Funktionsweise dieser Funktion zu demonstrieren.

Beispiel 1: Aktualisieren Sie ein einzelnes vorhandenes Attribut

Wir möchten ein Feld ändern, das bereits in den Zeilen der Sammlung vorhanden ist. Es gibt mehrere Update -Optionen. Unter ihnen verwenden wir die Option '$ set'.

Um die betroffenen Daten abzurufen, haben wir das Gehaltattribut im Fetch -Teil verwendet. Nach der Anfrage müssen wir das Ergebnis mit einem Gehalt von 5000 erzielen. Wenn diese Zeile abgerufen wird, haben wir eine Bedingung angewendet, um den Vornamen des Datensatzes durch einen neuen Namen zu ersetzen, der "Morgan" ist.

>> db.Arbeit.updateOne (Gehalt: 5000, $ set: FirstName: 'Morgan')

Dieser Befehl bringt den ersten Datensatz in der Sammlung der Datenbank gemäß dem angegebenen Gehalt ein. Der ältere Vorname war John. Nach der Verwendung des Befehls wird John durch "Morgan" ersetzt. Wenn Sie den Befehl ausführen, erhalten Sie die Bestätigung erneut. Dies bedeutet, dass die Abfrage erfolgreich ausgeführt wurde, indem angezeigt wird, dass die MatchedCount -Nummer 1 ist. Daher wird das gleiche geändert. Wir werden den resultierenden Wert durch die Verwendung des Finds () überprüfen.Pretty () Befehl.

Sie können die Änderung im Vornamen beobachten.

Beispiel 2: Aktualisieren Sie die Sammlung, indem Sie ein einzelnes Attribut hinzufügen

Unabhängig vom Austausch der vorhandenen Daten müssen Sie möglicherweise auch neue Informationen zum vorhandenen Datensatz hinzufügen. Dies geschieht auch über den Befehl update. Genau wie beim vorherigen Beispiel wird die Option $ set erneut verwendet, um der Sammlung ein neues Dokument hinzuzufügen. Die Filtration erfolgt gemäß dem Vornamen. Wenn dieser angegebene Name in der Abfrage übereinstimmt, werden wir dieser angegebenen Zeile ein neues Dokument des Speicherorts hinzufügen. Wir möchten das Feld des Standorts in die Zeile mit dem Vornamen "Toshay" hinzufügen.

>> db.Arbeit.updateOne (FirstName: "Toshay", $ set: location: "usa")

Das MongoDB -Terminal reagiert. Diese eine übereinstimmende Zeile wird dann modifiziert. Wir werden die Änderung durch die Funktion find () sehen.

Es ist der zweite Rekord. Es wird also ein neues Standortfeld zusammen mit seinem zugewiesenen Wert hinzugefügt.

Beispiel 3: Aktualisieren Sie das Dokument, indem Sie den Wert erhöhen

Es ist nicht erforderlich, jedes Mal ein neues Dokument zu ersetzen oder hinzuzufügen. Es ist auch möglich, dass wir den Wert erhöhen können, der bereits mit einem Wert vorhanden ist, indem wir ihn in der Abfrage erwähnen. Dieser Betrag wird dem vorherigen hinzugefügt, und als Ergebnis wird ein neuer Wert generiert. Zu diesem Zweck verwenden wir einen Aktualisierungsbetreiber „$ inc“, der sich auf das Inkrement bezieht. Dieser Bediener wird an der Stelle von '$ set' verwendet, da wir den Wert nicht festlegen wollen, sondern ihn erhöhen möchten.

Das Ergebnis wird gemäß dem Vornamen gefiltert und dann das Gehalt dieser Person um 500 erhöht. Der Name ist 'James' und sein ursprüngliches Gehalt beträgt 7500.

>> db.Arbeit.updateone (FirstName: "James", $ Inc: Gehalt: 500)

Bei der Ausführung werden Sie feststellen, dass das Gehalt von James von 7500 über den $ Inc -Betreiber 8000 wird.

Abschluss

MongoDB UpdateOne ist die Funktion, mit der ein einzelnes Dokument aktualisiert wird, das zuerst in der Sammlung auftritt, wenn mehrere Übereinstimmungen gefunden werden. Wir haben versucht, die Merkmale und Funktionen dieser Funktion von MongoDB zu erklären. Zu Beginn haben wir die Syntax beschrieben, und dann werden einige grundlegende Beispiele erklärt, um Unklarheiten in Bezug auf die Funktionen dieser Funktion zu vermeiden. UpdateOne bietet einige Betreiber, die in der Abfrage angewendet werden. Zum Beispiel werden $ set und $ inc in diesem Artikel verwendet, um den neuen Wert auf das Dokument festzulegen und das vorherige zu erhöhen.