Node.js - MongoDB Daten einfügen
Hallo da draußen, ambitionierte Programmierer! Heute machen wir uns auf eine aufregende Reise in die Welt von Node.js und MongoDB. Genauer gesagt, wir werden erkunden, wie man Daten in MongoDB mit Node.js einfügt. Keine Sorge, wenn du neu bist – ich werde dich bei jedem Schritt mit der Geduld einer Großmutter führen, die ihrem Enkel beibringt, zum ersten Mal Kekse zu backen.
Was ist MongoDB?
Bevor wir uns den Details des Daten-einfügens widmen, lassen Sie uns einen Moment Zeit nehmen, um zu verstehen, was MongoDB ist. Stell dir vor, du hast einen riesigen digitalen Aktenkasten, in dem du alle Arten von Informationen speichern kannst. Das ist im Grunde genommen, was MongoDB ist – eine Datenbank, die Daten in einem flexiblen, JSON-ähnlichen Format namens BSON (Binary JSON) speichert.
Unsere Umgebung einrichten
Zuerst müssen wir sicherstellen, dass wir Node.js und MongoDB auf unserem Computer installiert haben. Wenn du das noch nicht getan hast, ist es wie Backen ohne Ofen oder Zutaten! Gehe zu den offiziellen Node.js- und MongoDB-Webseiten, um sie herunterzuladen und zu installieren.
Sobald du das erledigt hast, müssen wir den MongoDB-Treiber für Node.js installieren. Öffne dein Terminal (hab keine Angst, das ist nur eine textbasierte Methode, um mit deinem Computer zu kommunizieren) und gebe folgendes ein:
npm install mongodb
Dieser Befehl ist so, als ob du deinem Computer sagst, er soll für dich das MongoDB-Paket aus dem Laden holen.
Verbindung zu MongoDB herstellen
Bevor wir Daten einfügen können, müssen wir eine Verbindung zu unserer MongoDB-Datenbank herstellen. Hier ist, wie wir das machen:
const MongoClient = require('mongodb').MongoClient;
const url = "mongodb://localhost:27017/mydb";
MongoClient.connect(url, function(err, db) {
if (err) throw err;
console.log("Datenbank erstellt!");
db.close();
});
Lassen Sie uns das auseinandernehmen:
- Wir importieren das MongoDB-Modul.
- Wir geben die URL an, unter der unser MongoDB-Server läuft.
- Wir verwenden die
connect
-Methode, um eine Verbindung herzustellen. - Wenn es einen Fehler gibt, werfen wir ihn (wie eine schlechte Frucht wegschmeißen).
- Wenn die Verbindung erfolgreich ist, loggen wir eine Nachricht.
- Schließlich schließen wir die Datenbankverbindung.
Daten in MongoDB einfügen
Jetzt, da wir unsere Verbindung eingerichtet haben, schauen wir uns die beiden Hauptmethoden zum Einfügen von Daten in MongoDB an: insertOne()
und insertMany()
.
insertOne() Methode
Die insertOne()
Methode ist wie das sorgfältige Platzieren eines einzelnen Buches auf deinem Bücherregal. Sie ermöglicht es uns, ein einzelnes Dokument in eine Sammlung einzufügen. Hier ist, wie es funktioniert:
const MongoClient = require('mongodb').MongoClient;
const url = "mongodb://localhost:27017/";
MongoClient.connect(url, function(err, db) {
if (err) throw err;
const dbo = db.db("mydb");
const myobj = { name: "John Doe", address: "Highway 37" };
dbo.collection("customers").insertOne(myobj, function(err, res) {
if (err) throw err;
console.log("1 Dokument eingefügt");
db.close();
});
});
Lassen Sie uns diesen Code analysieren:
- Wir verbinden uns mit der Datenbank.
- Wir erstellen ein Objekt
myobj
mit den Daten, die wir einfügen möchten. - Wir verwenden
dbo.collection("customers").insertOne()
um das Objekt in die "customers" Sammlung einzufügen. - Wenn erfolgreich, loggen wir eine Nachricht und schließen die Verbindung.
insertMany() Methode
Was ist, wenn du mehrere Bücher gleichzeitig auf dein Regal platzieren möchtest? Da kommt insertMany()
ins Spiel. Diese Methode ermöglicht es uns, mehrere Dokumente auf einmal einzufügen:
const MongoClient = require('mongodb').MongoClient;
const url = "mongodb://localhost:27017/";
MongoClient.connect(url, function(err, db) {
if (err) throw err;
const dbo = db.db("mydb");
const myobj = [
{ name: 'John', address: 'Highway 71'},
{ name: 'Peter', address: 'Lowstreet 4'},
{ name: 'Amy', address: 'Apple st 652'}
];
dbo.collection("customers").insertMany(myobj, function(err, res) {
if (err) throw err;
console.log("Anzahl der eingefügten Dokumente: " + res.insertedCount);
db.close();
});
});
Hier ist, was passiert:
- Wir erstellen ein Array von Objekten, jedes darstellend ein Dokument, das wir einfügen möchten.
- Wir verwenden
dbo.collection("customers").insertMany()
um alle diese Objekte auf einmal einzufügen. - Wir loggen die Anzahl der eingefügten Dokumente mit
res.insertedCount
.
Vergleich von insertOne() und insertMany()
Um dir die Unterschiede zwischen diesen beiden Methoden besser zu verdeutlichen, schauen wir uns eine Vergleichstabelle an:
Eigenschaft | insertOne() | insertMany() |
---|---|---|
Anzahl der Dokumente | Fügt ein einzelnes Dokument ein | Fügt mehrere Dokumente ein |
Eingabe | Nimmt ein einzelnes Objekt | Nimmt ein Array von Objekten |
Rückgabewert | Gibt ein einzelnes InsertOneResult-Objekt zurück | Gibt ein InsertManyResult-Objekt zurück |
Leistung | Langsamer für das Einfügen mehrerer Dokumente | Schneller für das Einfügen mehrerer Dokumente |
Anwendungsfall | Wenn du ein einzelnes Dokument einfügen möchtest | Wenn du mehrere Dokumente auf einmal einfügen möchtest |
Schlussfolgerung
Und das war's, Leute! Wir haben erfolgreich die Gewässer des Einfügens von Daten in MongoDB mit Node.js durchquert. Denke daran, insertOne()
ist wie das sorgfältige Platzieren eines einzelnen Buches auf deinem Regal, während insertMany()
so ist, als ob du einen ganzen Bücherschrank auf einmal auffüllst.
Übung macht den Meister, also habe keine Angst, diese Methoden auszuprobieren. Versuche, verschiedene Arten von Daten einzufügen, oder sieh nach, wie viele Dokumente du mit insertMany()
auf einmal einfügen kannst. Wer weiß, vielleicht baust du sogar die nächste große datenbankgestützte Anwendung!
Denke daran, jeder Experte war einmal ein Anfänger. Weiter codieren, weiter lernen und vor allem weiter Spaß haben! Bis zum nächsten Mal, fröhliches Coden!
Credits: Image by storyset