English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In diesem Node.js-Tutorial verwenden wir die Methoden insertOne() und insertMany(), um durch Beispiele zu lernen, wie man aus einer Node.js-Anwendung ein oder mehrere Dokumente in die MongoDB-Sammlung einfügt.
Hier ist eine Schritt-für-Schritt-Anleitung mit einem Beispiel, das zeigt, wie Dokumente aus einer Node.js-Anwendung in die MongoDB-Sammlung eingefügt werden.
Starten Sie den MongoDB-Dienst. Führen Sie den folgenden Befehl aus, um den MongoDB-Dienst zu starten
sudo service mongod start
Erhalten Sie die grundlegende URL des MongoDB-Dienstes. Ein einfaches Trick, um die grundlegende URL des MongoDB-Dienstes zu verstehen, ist, den Terminal zu öffnen und den Mongo Shell auszuführen.
Terminal - Mongo Shell
arjun@nodejs:~$ mongo MongoDB Shell-Version v3.4.9 Verbindend mit: mongodb://127.0.0.1:27017 MongoDB Server-Version: 3.4.9 Server hat Startwarnungen: 2017-10-29T18:15:36.110+0530 I STORAGE [initandlisten]
Wenn der Mongo Shell gestartet wird, wird die grundlegende URL von MongoDB wiedergegeben.
mongodb://127.0.0.1:27017
Vorbereiten Sie die vollständige URL. Fügen Sie den Namen der Datenbank, zu der Sie sich verbinden möchten (z.B. newdb), an die Basis-URL an.
mongodb://127.0.0.1:27017/newdb
Erstellen Sie einen MongoClient.
var MongoClient = require('mongodb').MongoClient;
Verbinden Sie sich unter Verwendung der URL mit dem MongoDB-Server über MongoClient.
MongoClient.connect(url, <callback_function>);
Sobald der MongoClient versucht, eine Verbindung herzustellen, wird die Callback-Funktion mit dem Fehler und dem db-Objekt als Parameter aufgerufen.
Wenn die Verbindung erfolgreich ist, verweist das db-Objekt auf die Datenbank newdb.
Das Dokument wird in die angegebene MongoDB-Sammlung eingefügt. Hier ist die Syntax der Methoden insertOne() und insertMany() für das Einfügen von Dokumenten in die Sammlung von MongoDB aus Node.js.
insertOne()
db.collection(<collection_name>).insertOne(<document>, <callback_function>)
insertMany()
db.collection(<collection_name>).insertMany(<documents_array>, <callback_function>)
Beschreibung der Parameter:
<collection_name> - Name der neuen MongoDB Collection, die wir erstellen möchten
<document> - Einzelnes Dokument, das in die MongoDB Collection eingefügt werden muss
<document_array> - Dokumentensatz, der in die MongoDB Collection eingefügt werden soll
<callback_function> - Nachdem Node versucht hat, eine Sammlung zu erstellen und das Ergebnis vorzubereiten, wird dieser Node.js-Rückruf aufgerufen. Der Rückruf akzeptiert Fehler und das Ergebnisobjekt als Parameter.
// Wir erstellen im newdb-Datenbank "Benutzer"-Sammlung var url = "mongodb://localhost:27017/newdb"; // Erstellen Sie einen Client für mongodb var MongoClient = require('mongodb').MongoClient; // Verbinden Sie den Client mit dem mongo-Dienst MongoClient.connect(url, function(err, db) { if (err) throw err; // db weist auf newdb console.log("Umgeschaltet zu ",+db.databaseName+" Datenbank"); // Datei zum Einfügen var doc = { name: "Roshan", age: "22" }; // Fügen Sie den Dokument in die "Benutzer"-Sammlung mit insertOne hinzu db.collection("users").insertOne(doc, function(err, res) { if (err) throw err; console.log("Dokument eingefügt"); // Schließen Sie die Verbindung mit db nach Abschluss db.close(); }); });
Ausgaberesultat
$ node node-js-mongodb-einfügen-document.js Ungeswitcht auf neue Datenbank-Datenbank Dokument eingefügt
Mongo Shell
> use newdb umgeschaltet zu db newdb > show collections users > db.users.find({}); { "_id" : ObjectId("5a127729a415612642e3d6ad"), "name" : "Roshan", "age" : "22" } >
// Wir erstellen im newdb-Datenbank "Benutzer"-Sammlung var url = "mongodb://localhost:27017/newdb"; // Erstellen Sie einen Client für mongodb var MongoClient = require('mongodb').MongoClient; // Verbinden Sie den Client mit dem mongo-Dienst MongoClient.connect(url, function(err, db) { if (err) throw err; // db weist auf newdb console.log("Umgeschaltet zu ",+db.databaseName+" Datenbank"); // Datei zum Einfügen var docs = [{ name: "Udat", age: "21" }, { name: "Karthik", age: "24" }, { name: "Anil", age: "23" }]; // Verwenden Sie insertOne, um mehrere Dokumente in die "Benutzer"-Sammlung einzufügen db.collection("users").insertMany(docs, function(err, res) { if (err) throw err; console.log(res.insertedCount+" Dokumente eingefügt"); // Schließen Sie die Verbindung mit db nach Abschluss db.close(); }); });
Ausgaberesultat
$ node node-js-mongodb-einfügen-viele-documents.js Ungeswitcht auf neue Datenbank-Datenbank 3 Dokumente eingefügt
Mongo Shell
> db.users.find({}); { "_id" : ObjectId("5a127729a415612642e3d6ad"), "name" : "Roshan", "age" : "22" } { "_id" : ObjectId("5a1278efecc5062794f4ed8d"), "name" : "Udat", "age" : "21" } { "_id" : ObjectId("5a1278efecc5062794f4ed8e"), "name" : "Karthik", "age" : "24" } { "_id" : ObjectId("5a1278efecc5062794f4ed8f"), "name" : "Anil", "age" : "23" } >
Der erste Eintrag stammt aus dem ersten Beispiel, die übrigen drei wurden zusammen mit diesem Beispiel eingefügt.
In diesem Node.js MongoDB-Tutorial: Node.js – Dokument(e) in die MongoDB Collection einfügen, wir haben gelernt, wie man mit dem mongodb-Paket Dokumente in die MongoDB Collection von Node.js-Anwendungen mit insertOne() und insertMany() Methoden einfügt. In unserem nächsten Tutorial – Node.js MongoDB Find – werden wir lernen, Dokumente aus der MongoDB Collection abzufragen.