Nodejs vs MongoDB -Tutorial

Nodejs vs MongoDB -Tutorial
MongoDB ist eine weit verbreitete NoSQL -Datenbank. Die Möglichkeit, Daten in verschiedenen Formaten zu speichern. Andererseits ist NodeJS eine bekannte Laufzeitumgebung, die bei der Ausführung von JavaScript-Code außerhalb des Browsers unterstützt.

Das erste Tool (MongoDB) revolutioniert das Datenmanagement, während NodeJS für die Entwicklung skalierbarer Anwendungen berühmt ist. Nach der Bedeutung dieser fruchtbaren Werkzeuge zeigt dieser Leitfaden die Verwendung von NodeJs mit MongoDB.

MongoDB und Nodejs

Obwohl die NodeJS -Umgebung mit mehreren SQL- und NoSQL -Datenbanken funktioniert. Hier werden wir nur an MongoDb abzielen. Die NodeJS unterstützt Sie durch die Durchführung mehrerer Operationen in MongoDB, die unten aufgeführt sind:

  • Die Anzahl der Datenbankverbindungen von MongoDB, die von NodeJs verwaltet werden.
  • Verwaltung der Verbindungen zu einer Datenbank; Erstellen einer Datenbankverbindung, um die Verbindung zu beenden.
  • Die von MongoDB unterstützten CRUD -Operationen können durchgeführt werden, indem sie mit NodeJs verwendet werden.

Voraussetzungen

Mit Hilfe dieses Abschnitts können Sie eine Umgebung einrichten, in der Sie MongoDB mit NodeJs verwenden können. Die folgende Liste von Paketen muss in Ihrem Linux -System vorhanden sein, um mit NodeJS zusammen mit MongoDB zu beginnen.

Knoten installieren.JS: Sie müssen den Knoten installieren.JS -Version “4.X" oder größer. Es wird jedoch empfohlen, die neueste Version zur Verfügung zu stellen.

Aktualisieren Sie zunächst die Liste der Pakete, indem Sie den folgenden Befehl ausgeben:

$ sudo APT Update

Holen Sie sich nach dem Aktualisieren den Knoten.JS auf Ubuntu mit Hilfe des unten erwähnten Befehls:

$ sudo apt installieren nodejs

Notiz: Wir haben die bereits installiert Nodejs.

Markieren Sie auch Ihre Knotenversion, indem Sie den folgenden Befehl ausgeben:

$ nodejs -v

Knoten bekommen.JS -Paketmanager: Die NPM -Unterstützung des Knotens.JS ermöglicht die Installation mehrerer Module oder Pakete, die mit Knoten verwendet werden sollen.JS. Führen Sie also den folgenden Befehl aus, um NPM auf Ihrem Ubuntu zu installieren:

$ sudo apt installieren npm

MongoDb Atlas: Nach der Installation der oben genannten Instanzen müssen Sie zu MongoDB Atlas gehen und dort ein Konto erstellen. Sobald das Konto erfolgreich erstellt wurde, werden Sie aufgefordert, Ihr Projekt zu benennen und einen Cluster in diesem Projekt zu erstellen. Danach sehen Sie eine Schnittstelle wie unten gezeigt:

Sie können den Projektnamen und den Cluster dieses Projekts auch beobachten:

Notiz: In unserem Fall ist der Projektname auf festgelegt LinuxHint, und der mit diesem Projekt zugeordnete Cluster wird benannt LinuxHint-C1.

Darüber hinaus müssen Sie für die Verbindung die unten angegebenen Schritte ausführen:

Schritt 1: Klick auf das "VerbindenSchaltfläche "Schaltfläche", um die Verbindung zu konfigurieren:

Schritt 2: Auf der nächsten Seite klicken Sie auf “Fügen Sie Ihre aktuelle IP -Adresse hinzu”Um die aktuelle IP für die Verbindung festzulegen.

Klicken Sie nun auf “IP -Adresse hinzufügen”Um diesen Schritt zu vervollständigen.

Schritt 3: Navigieren Sie nach der Einstellung der IP -Adresse zum “Erstellen Sie einen Datenbankbenutzer" Möglichkeit. Geben Sie den Namen des Benutzers in die “einNutzername"Und Passwort in"PasswortOption "und klicken Sie dann auf"Datenbank Benutzer erstellen”Um diesen Schritt zu vervollständigen.

Wählen Sie nun die Verbindungsmethode, indem Sie auf “klicken“Wählen Sie eine Verbindungsmethode„:

Schritt 4: Nex klicken auf “Schließen Sie Ihre Anwendung an“.

Wir wollen NodeJs mit MongoDB, für diese Auswahl “Knoten.JS"Aus dem Dropdown -Menü mit dem Namen"TREIBER”Und wählen Sie die relevante Version aus der“AUSFÜHRUNG" Möglichkeit. Darüber hinaus müssen Sie die Verbindungs ​​-URL kopieren, um sie in der NodeJS -Anwendung zu verwenden (oder Sie sie später auch kopieren können).

Sobald Sie alle diese Schritte ausgeführt haben, sind Sie so eingestellt, dass Sie Ihre NodeJS -Anwendung mit MongoDB anschließen können.

Umgebung einrichten

Dieser Abschnitt beschreibt kurz die MongoDB -Operationen mithilfe von NodeJs. Dazu müssen Sie ein Knotenprojekt erstellen, damit seine Verbindung mit MongoDB hergestellt werden kann.

In den unten angegebenen Schritten werden Sie dazu veranlasst, ein neues Knotenprojekt zu erstellen und ein MongoDB -Modul zu installieren.

Schritt 1: Öffnen Sie Ihr Ubuntu -Terminal. Machen Sie ein neues Verzeichnis und ändern Sie das gegenwärtige Arbeitsverzeichnis in diesen Ordner. Zum Beispiel haben wir ein Verzeichnis erstellt “Knotenmongo"Und verlagerte PWD auf"Knotenmongo”Durch Ausgabe der folgenden Befehle:

$ mkdir node-mongo
$ cd node-mongo

Schritt 2: Sobald Sie sich in das interessierenKnotenmongo" Verzeichnis; Erstellen Sie ein Knotenprojekt mit dem folgenden Befehl:

$ npm init

Schritt 3: Führen Sie danach den folgenden Befehl aus, um das MongoDB -Modul zu installieren, das für das Ausführen von MongoDB -Abfragen erforderlich ist (Wir haben diesen Treiber bereits installiert):

$ npm mongoDB installieren

Notiz: Es wird empfohlen, dass Sie die Knotenversion größer haben müssen als v14 hinzufügen MongoDb Treiber.

Herstellung einer Verbindung zwischen MongoDB und NodeJs herstellen

Nach dem Einrichten der Umgebung sind Sie alle so eingestellt, dass Sie Knotenjs mit MongoDB anschließen. Darüber hinaus ist der hier verwendete Code -Editor "Visual Studio -Code“.

Sie müssen die unten angegebenen Schritte befolgen, um die Verbindung erfolgreich zu machen:

Schritt 1: Öffnen Sie den Ordner in der “Visual Studio -Code" Anwendung. Es wird beobachtet, dass bereits zwei Dateien vorhanden sind, einer heißt “Paket.JSON" Und "Paketschloss.JSON“. Diese Dateien werden bei der Initialisierung erstellt NPM und installierte die MongoDb Treiber. Sie können diese Dateien erstellen, indem Sie folgen Schritt 2 Und Schritt 3 von "So richten Sie die Umgebung ein“.

Erstelle eine neue ".JS"Datei in"Knotenmongo"Und nennen Sie es"Index.JS“.

Danach öffnen Sie die “Paket.JSONDatei und Führen Sie die folgenden Änderungen durch, um das zu machenIndex.JS”Datei ausführbar.

Sobald Sie fertig sind, speichern Sie die Änderungen (Strg+s).

Schritt 2: Öffne dein "Index.JS" Datei. Verwenden Sie danach den folgenden Code, um den Verbindungsversuch zu unternehmen. Die Verbindungs ​​-URL muss aus dem MongoDB -Atlas kopiert werden.

Für die Verbindungs ​​-URL müssen Sie zu “gehen“Schritt 4"Des Unterabschnitts"- MongoDb Atlas" im "Voraussetzungen" Abschnitt. Zur Leichtigkeit ist das Bild unten angehängt:

Schritt 3: Öffnen Sie nun Ihr Terminal (oder Sie können das Terminal im Inneren verwendenVisual Studio -CodeAuch) und führen Sie den folgenden Befehl aus, um die Verbindung zu testen:

Das Bild unten zeigt, dass die Verbindung erfolgreich ist, da der Befehl ein „zurückgibt“Verbindung erfolgreich" Nachricht.

$ npm Startindex.JS

Erstellen einer Datenbank und einer Sammlung mit NodeJS und MongoDB

Sobald Sie eine Verbindung erfolgreich hergestellt haben. Jetzt können Sie mit NodeJS verschiedene MongoDB -Operationen ausführen. Hier haben wir ein paar Schritte durchgeführt, um die Datenbank und Sammlung zu erstellen.

Schritt 1 (optional): Lassen Sie uns vor der Erstellung der Datenbank die Datenbankliste mit dem folgenden Befehl in Mongo Shell ansehen.

> Zeigen Sie DBS

Es kann beobachtet werden, dass es nur 3 Datenbanken gibt.

Schritt 2: Wir haben eine neue geschaffen .JS Datei und benannte es “Datenbank.JS“. Einbetten Sie den folgenden Code in die “ein“Datenbank.JS" Datei. Der Code erstellt eine Datenbank mit dem Namen “LinuxHint "Und eine Sammlung namens"Mitarbeiter“.

Code

// MongoDB -Treiber importieren
var mongoclient = require ('mongoDB').Mongoclient;
// LinuxHint_Mongodb ist der Name der Datenbank, die wir hier erstellen!!
var url = "mongoDB: // localhost: 27017/linuxHint";
// Client verbinden!!
Mongoclient.Connect (URL, Funktion (err, client)
var db = client.DB ('LinuxHint');
Wenn (err) erröste;
// Eine Sammlung namens "Staff" wird erstellt!!
db.CreateCollection ("Staff", Funktion (Err, Ergebnis)
Wenn (err) erröste;
Konsole.log ("erfolgreich die Datenbank und Sammlung erstellt");
Klient.schließen();
);
);

Bild

Öffnen Sie Ihr Terminal und testen Sie den Code, indem Sie das ausführenDatenbank.JSDatei in Ihrem Terminal:

$ Knotendatenbank.JS

Schritt 3 (optional, aber empfohlen): Obwohl die Datei erfolgreich ausgeführt wurde, wird empfohlen, die Existenz der neu erstellten Datenbank und der Sammlung zu überprüfen. Führen Sie dafür die folgenden Befehle aus:

> Zeigen Sie DBS
> Verwenden Sie LinuxHint
> Sammlungen anzeigen

Einfügen von Dokumenten mit NodeJS und MongoDB

In MongoDB gibt es zwei Möglichkeiten, Dokumente einzufügen:

Ein Dokument einfügen: Zur Einführung eines Dokuments die InsertOne () Methode der MongoDB wird verwendet. Dafür eine neue Datei “Inserton.JS”Wird erstellt, innerhalb der“Knotenmongo" Verzeichnis. Der folgende Code fügt der “nur ein Dokument hinzuMitarbeiter"Sammlung der"LinuxHintDatenbank.

Code

var mongoclient = require ('mongoDB').Mongoclient;
var url = "mongodb: // localhost: 27017/";
Mongoclient.Connect (URL, Funktion (err, db)
Wenn (err) erröste;
var dbo = db.DB ("LinuxHint");
var myobj = name: "Alen", Bezeichnung: "Autor";
DBO.Sammlung ("Mitarbeiter").InsertOne (myObj, Funktion (err, res)
Wenn (err) erröste;
Konsole.log ("Sie haben ein Dokument eingefügt");
db.schließen();
);
);

Bild

Öffnen Sie nun Ihr Terminal und führen Sie den folgenden Befehl aus:

$ node InsertOne.JS

Fügen Sie mehrere Dokumente ein: Für die Einführung mehrerer Dokumente haben wir eine neue erstellt .JS Datei und benannte es “Einfügung.JS“. Der folgende Code hilft Ihnen, mehrere Dokumente in die “einzufügenMitarbeiter"Sammlung der"LinuxHintDatenbank.

Code

var mongoclient = require ('mongoDB').Mongoclient;
var url = "mongodb: // localhost: 27017/";
Mongoclient.Connect (URL, Funktion (err, db)
Wenn (err) erröste;
var dbo = db.DB ("LinuxHint");
// Erstellte einen neuen OBJ, um Dokumente einzufügen
var InsertObj = [
Name: 'Sam', Bezeichnung: 'Team-Lead',
Name: 'John', Bezeichnung: 'Autor',
Name: 'Kane', Bezeichnung: 'Ausbilder',
Name: 'Miln', Bezeichnung: 'Video Editor'
];
// Da es mehrere Dokumente gibt, wird hier InsertMany () verwendet
DBO.Sammlung ("Mitarbeiter").InsertMany (InsertObj, Funktion (err, res)
Wenn (err) erröste;
Konsole.log ("Sie haben eingefügt" + res.InisedCount + "Dokumente erfolgreich!!");
db.schließen();
);
);

Bild

Verwenden Sie den unten erwähnten Befehl, um das auszuführen “Einfügung.JS" Datei:

$ Node Insert.JS

Finden von Dokumenten in NodeJS und MongoDB

In MongoDB wird die Find () -Methode verwendet, um Dokumente aus einer Sammlung einer Datenbank abzurufen. Wir haben eine geschaffen “finden.JSDatei, die den Code enthält, um Dokumente aus dem "abzurufen"Mitarbeiter"Sammlung der"LinuxHintDatenbank. Die Methode zur Find () -Methode () ist unten bereitgestellt:

Code

var mongoclient = require ('mongoDB').Mongoclient;
var url = "mongodb: // localhost: 27017/";
Mongoclient.Connect (URL, Funktion (err, db)
Wenn (err) erröste;
var dbo = db.DB ("LinuxHint");
DBO.Sammlung ("Mitarbeiter").finden().toArray (Funktion (err, Ergebnis)
Wenn (err) erröste;
Konsole.log (Ergebnis);
db.schließen();
);
);

Bild

Führen Sie den folgenden Befehl aus, um die Datei auszuführen “finden.JSUnd die Ausgabe zeigt die Dokumente der “Mitarbeiter" Sammlung:

$ node find.JS

Aktualisieren von Dokumenten in NodeJS und MongoDB

Das Datenmanagement einer Organisation soll gut genug sein, wenn sie ihre Daten auf dem Laufenden halten. MongoDB bietet verschiedene Methoden zum Aktualisieren von Dokumenten wie, updateOne (), updatemany ().

Aktualisieren Sie ein Dokument: Dafür haben wir eine neue Datei erstellt und sie benannt “UpdateOne.JS“. Da es möglicherweise mehrere Dokumente gibt, die haben "Bezeichnung" Wert gleich "Autor", Aber updateOne () Aktualisiert das erste Dokument, das der Bedingung entspricht. Diese Operation wird mit dem folgenden Code verwendet:

Code

var mongoclient = require ('mongoDB').Mongoclient;
var url = "mongoDB: // 127.0.0.1: 27017/";
Mongoclient.Connect (URL, Funktion (err, db)
Wenn (err) erröste;
var dbo = db.DB ("LinuxHint");
var cond = Bezeichnung: "Autor";
var ch_val = $ set: Bezeichnung: "Interne", Status: "Neue Hirt";
DBO.Sammlung ("Mitarbeiter").updateOne (cond, ch_val, function (err, res)
Wenn (err) erröste;
Konsole.Protokoll ("erfolgreich!! Der Status wird aktualisiert!!");
db.schließen();
);
);

Bild

Sie können die "ausführen"UpdateOne.JSDatei mithilfe des folgenden Befehls im Terminal:

$ node updateOne.JS

Aktualisieren Sie mehrere Dokumente: Um mehrere Dokumente zu aktualisieren, bietet MongoDB die Methode updatemany () unterstützt. Wir werden diese Methode auch in diesem Abschnitt verwenden.

Eine neue Datei (aktualisieren.JS) wird erstellt, die sich im in der “befindet“Knotenmongo" Verzeichnis. Wir aktualisieren nur die Dokumente, die den Feldwert des Bezeichnungsfelds haben. “TeamleiterUnd der folgende Code hilft uns in dieser Hinsicht:

Notiz: Die Operation wird auf die “angewendet“Mitarbeiter"Sammlung von Datenbank"LinuxHint“.

Code

var mongoclient = require ('mongoDB').Mongoclient;
var url = "mongoDB: // 127.0.0.1: 27017/";
Mongoclient.Connect (URL, Funktion (err, db)
Wenn (err) erröste;
var dbo = db.DB ("LinuxHint");
var cond = Bezeichnung: "Team-Lead";
var ch_val = $ set: status: "förderlich", new_designation: "Manager";
DBO.Sammlung ("Mitarbeiter").updatemany (cond, ch_val, function (err, res)
Wenn (err) erröste;
Konsole.log (res.Ergebnis.Nmodified + "Dokumente wurden aktualisiert!!");
db.schließen();
);
);

Bild

Löschen von Dokumenten in NodeJs und MongoDB

Wie einfügen und Methoden aktualisieren, können Sie eine sowie mehrere Dokumente löschen. Wir haben hier also zwei Möglichkeiten:

Ein Dokument löschen: Um ein einzelnes Dokument zu löschen, müssen Sie die verwenden Deleteone () Methode der MongoDB. Dafür ein neues “Deleteone.JSDie Datei wird erstellt, die den Code enthält. Der unten angegebene Code löscht das Dokument, das übereinstimmt. “Name"Wert ist gleich"Miln„:

Bild

var mongoclient = require ('mongoDB').Mongoclient;
var url = "mongodb: // localhost: 27017/";
Mongoclient.Connect (URL, Funktion (err, db)
Wenn (err) erröste;
var dbo = db.DB ("LinuxHint");
var cond = name: 'miln';
DBO.Sammlung ("Mitarbeiter").Deleteone (cond, function (err, obj)
Wenn (err) erröste;
Konsole.Protokoll ("ein Dokument gelöscht!!");
db.schließen();
);
);

Code

$ node deleteone.JS

Mehrere Dokumente löschen: MongoDB bietet Unterstützung beim Löschen mehrerer Dokumente gleichzeitig und man kann die verwenden Deletemany () Methode dazu. Wir haben eine neue Datei erstellt “löschen.JS"Und diese Datei ist in die" platziert "Knotenmongo" Verzeichnis. Der Code, der mehrere Dokumente löscht, nach erfolgreicher Ausführung des Befehls. Der Befehl sucht nach den Dokumenten, in denen die “Bezeichnung" Feld gleich “Autor“.

Notiz: Der in diesem Beispiel verwendete Datenbankname lautet “LinuxHint"Und die hier verwendete Sammlung ist"Mitarbeiter“.

Code

var mongoclient = require ('mongoDB').Mongoclient;
var url = "mongodb: // localhost: 27017/";
Mongoclient.Connect (URL, Funktion (err, db)
Wenn (err) erröste;
var dbo = db.DB ("LinuxHint");
var myQuery = Bezeichnung: "Autor";
DBO.Sammlung ("Mitarbeiter").Deletemany (MyQuery, Funktion (err, obj)
Wenn (err) erröste;
Konsole.log ("Die Löschung ist erfolgreich");
db.schließen();
);
);

Bild

Das "die" laufen "löschen.JSDatei, führen Sie den folgenden Befehl in Ihrem Ubuntu -Terminal aus:

$ Knoten löschen.JS

Abschluss

NodeJS ist eine bekannte Laufzeitumgebung, die hauptsächlich für die serverseitige Programmierung verwendet wird. Während MongoDB eine bekannte NOSQL-Datenbank ist, die die gespeicherten Daten speichert und verwaltet. In diesem Artikel haben wir ein Tutorial von Nodejs und MongoDB vorgestellt. Wenn Sie diesem Handbuch folgen, haben Sie gelernt, den MongoDB -Server mit der NodeJS -Umgebung und einigen grundlegenden Operationen von MongoDB zu verbinden. Sobald die Verbindung erfolgreich hergestellt wurde, können Sie alle mongoDB-bezogenen Operationen ausführen, wie wir die Wege gezeigt haben, um Dokumente in der NodeJS MongoDB-Umgebung einzufügen, zu aktualisieren, zu löschen, zu finden. Dieser Leitfaden unterstützt auch mehrere Programmierer, die an Nodejs und MongoDB arbeiten.