MongoDB setzen mehrere Dokumente ein

MongoDB setzen mehrere Dokumente ein
In diesem Artikel lernen wir, wie Sie in einer bestimmten Sammlung gleichzeitig mehrere Dokumente mit den nativen MongoDB Shell -Befehlen einfügen können.

MongoDB InsertMany () Methode

Wie der Name schon sagt, ermöglicht es uns mit der Methode InsertMany (), eine Reihe von Dokumenten anzugeben und sie alle gleichzeitig in einer bestimmten Sammlung einzulegen.

Das Folgende zeigt die Syntax der InsertMany () -Methode:

db.Sammlung.InsertMany (
[,…],

WriteConcern: ,
bestellt:

)

Der Parameter ist wie folgt:

  1. Dokument - Gibt eine Reihe von Dokumenten an, die Sie in eine bestimmte Sammlung einfügen können.
  2. WriteConcern - Definiert die Parameter von Write Concern. Ein Schreibbedenken wird verwendet, um die von MongoDB für Write Ops angeforderte Bestätigung zu definieren.
  3. Bestellung definiert, ob die MongoDB.

Die Methode sollte eine Bestätigungsanweisung zurückgeben, die eine Boolesche Anweisung und die Anzahl der eingefügten Dokumente enthält.

Schauen wir uns ein praktisches Beispiel an.

Definieren Sie eine Sammlung

Beginnen wir mit einer einfachen Sammlung, in der wir Beispieldaten einfügen können. Melden Sie sich in MongoDB Shell an und führen Sie den Befehl aus:

$ mongosh
db.CreateCollection ("Mitarbeiter")

Der obige Befehl sollte eine neue Sammlung namens Mitarbeiter erstellen.

Fügen Sie mehrere Dokumente mit dem Feld _id ein

MongoDB ist eine sehr flexible Datenbank. Es ermöglicht es uns, Dokumente einzufügen, ohne das Feld _id anzugeben. Standardmäßig generiert MongoDB eine eindeutige Kennung für jedes in der Sammlung eingefügte Dokument

Das folgende Beispiel zeigt, wie die Methode InsertManMy () verwendet wird, um mehrere Dokumente ohne das Feld _id einzufügen.

db.Mitarbeiter.InsertMany ([
Name: "Ryan", Abteilung: "Spielentwicklung", Gehalt: 120000,
Name: "David", Abteilung: "Backend Development", Gehalt: 108000,
Name: "Rachael", Abteilung: "Full Stack Development", Gehalt: 110000,
Name: "James", Abteilung: "DevOps Development", Gehalt: 110000,
Name: "Peter", Abteilung: "Spielentwicklung", Gehalt: 123000,
]))

Wenn wir die obige Abfrage ausführen, sollten wir wie gezeigt eine Ausgabe erhalten:


"Anerkannt": wahr,
"InserDids": [
ObjectID ("632BD2F28B16030EEBD4FAD6"),
ObjectID ("632BD2F28B16030EEBD4FAD7"),
ObjectID ("632BD2F28B16030EEBD4FAD8"),
ObjectID ("632BD2F28B16030EEBD4FAD9"),
ObjectID ("632BD2F28B16030EEBD4FADA")
]

Das obige zeigt eine Bestätigungsnachricht und die automatisch generierten ID -Werte.

Wir können die eingefügten Dokumente als:

db.Mitarbeiter.finden()

Der obige Befehl sollte die eingefügten Dokumente wie gezeigt zurückgeben:


"_id": ObjectID ("632BD2F28B16030EEBD4FAD6"),
"Name": "Ryan",
"Abteilung": "Spielentwicklung",
"Gehalt": 120000.0


"_id": ObjectID ("632BD2F28B16030EEBD4FAD7"),
"Name": "David",
"Abteilung": "Backend -Entwicklung",
"Gehalt": 108000.0


"_id": ObjectID ("632BD2F28B16030EEBD4FAD8"),
"Name": "Rachael",
"Abteilung": "Vollstapelentwicklung",
"Gehalt": 110000.0


"_id": ObjectID ("632BD2F28B16030EEBD4FAD9"),
"Name": "James",
"Abteilung": "DevOps Development",
"Gehalt": 110000.0

Fügen Sie mehrere Dokumente mit dem Feld _id ein

Wenn wir nicht wünschen, dass MongoDB einen _ID -Wert generiert, können wir die Werte für die _id -Spalte explizit angeben, wie im folgenden Beispiel gezeigt:

db.Mitarbeiter.InsertMany ([
_id: 1, Name: "Ryan", Abteilung: "Spielentwicklung", Gehalt: 120000,
_id: 2, Name: "David", Abteilung: "Backend Development", Gehalt: 108000,
_id: 3, Name: "Rachael", Abteilung: "Full Stack Development", Gehalt: 110000,
_id: 4, Name: "James", Abteilung: "DevOps Development", Gehalt: 110000,
_id: 5, Name: "Peter", Abteilung: "Spielentwicklung", Gehalt: 123000,
]))

Im obigen Beispiel geben wir die Werte der Spalte _id für jedes in der Sammlung eingefügte Dokument ausdrücklich an.

Die obige Abfrage sollte zurückkehren:


"Anerkannt": wahr,
"InserDids": [
1.0,
2.0,
3.0,
4.0,
5.0
]

Ungeordneter Einsatz

Wir können auch einen ungeordneten Einfügen ausführen, indem wir den geordneten Parameter auf False wie unten gezeigt einstellen:

db.Mitarbeiter.InsertMany ([
_id: 1, Name: "Ryan", Abteilung: "Spielentwicklung", Gehalt: 120000,
_id: 2, Name: "David", Abteilung: "Backend Development", Gehalt: 108000,
_id: 3, Name: "Rachael", Abteilung: "Full Stack Development", Gehalt: 110000,
_id: 4, Name: "James", Abteilung: "DevOps Development", Gehalt: 110000,
_id: 5, Name: "Peter", Abteilung: "Spielentwicklung", Gehalt: 123000,
], bestellt: false)

Dies ist nützlich, wenn Sie mit doppelten Dokumenten arbeiten.

Abschluss

In diesem Beitrag haben wir die Grundlagen der Arbeit mit MongoDB InsertMany () -Methode behandelt, um eine bestimmte Sammlung in einem einzigen Befehl mehrere Dokumente hinzuzufügen, um mehrere Dokumente hinzuzufügen.