Python MongoDB

MongoDB ist derzeit eine der beliebtesten NoSQL-Datenbanken und verwendet den BSON-Datentyp (ähnlich JSON).

Für die Installation und Einführung in die MongoDB-Datenbank können Sie unserMongoDB-Tutorial aufrufen.


PyMongo

Um Python mit MongoDB zu verbinden, benötigen Sie einen MongoDB-Treiber. Hier verwenden wir den PyMongo-Treiber zum Verbinden.

pip-Installation

pip ist ein universelles Python-Paketverwaltungstool, das Funktionen zum Suchen, Herunterladen, Installieren und Deinstallieren von Python-Paketen bietet.

pymongo installieren:

$ python3 -m pip3 install pymongo

Sie können auch die zu installierende Version angeben:

$ python3 -m pip3 install pymongo==3.5.1

Befehl zum Aktualisieren von pymongo:

$ python3 -m pip3 install --upgrade pymongo

easy_install-Installation

Ältere Python-Versionen können easy_install zur Installation verwenden; easy_install ist ebenfalls ein Python-Paketverwaltungstool.

$ python -m easy_install pymongo

Befehl zum Aktualisieren von pymongo:

$ python -m easy_install -U pymongo

PyMongo testen

Als Nächstes können wir eine Testdatei demo_test_mongodb.py mit dem folgenden Code erstellen:

Code der Datei demo_test_mongodb.py:

#!/usr/bin/python3 import pymongo

Führen Sie die obige Codedatei aus. Wenn kein Fehler auftritt, war die Installation erfolgreich.


Datenbank erstellen

Eine Datenbank erstellen

Um eine Datenbank zu erstellen, müssen Sie das MongoClient-Objekt verwenden und die URL-Adresse der Verbindung sowie den Namen der zu erstellenden Datenbank angeben.

Im folgenden Beispiel erstellen wir die Datenbank exampledb:

Beispiel

#!/usr/bin/python3 import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["exampledb"]

Hinweis:In MongoDB wird eine Datenbank erst erstellt, nachdem Inhalte eingefügt wurden! Das heißt, nach dem Erstellen einer Datenbank müssen Sie eine Collection (Datentabelle) erstellen und ein Dokument (Datensatz) einfügen, bevor die Datenbank tatsächlich erstellt wird.

Prüfen, ob die Datenbank bereits vorhanden ist

Wir können alle Datenbanken in MongoDB auslesen und feststellen, ob die angegebene Datenbank vorhanden ist:

Beispiel

#!/usr/bin/python3 import pymongo myclient = pymongo.MongoClient('mongodb://localhost:27017/') dblist = myclient.list_database_names() # dblist = myclient.database_names() if "exampledb" in dblist: print("Die Datenbank ist bereits vorhanden!")

Hinweis:database_names ist in der neuesten Version von Python veraltet. Ab Python 3.7+ wurde es in list_database_names() geändert.


Sammlung erstellen

Sammlungen in MongoDB sind ähnlich wie Tabellen in SQL.

Eine Sammlung erstellen

MongoDB verwendet Datenbankobjekte, um Sammlungen zu erstellen, wie im folgenden Beispiel gezeigt:

Beispiel

#!/usr/bin/python3 import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["exampledb"] mycol = mydb["sites"]

Hinweis:In MongoDB wird eine Sammlung erst erstellt, nachdem Inhalte eingefügt wurden! Das heißt, nachdem Sie eine Sammlung (Datentabelle) erstellt haben, müssen Sie ein Dokument (Datensatz) einfügen, bevor die Sammlung tatsächlich erstellt wird.

Feststellen, ob die Sammlung bereits existiert

Wir können alle Sammlungen in der MongoDB-Datenbank lesen und feststellen, ob die angegebene Sammlung existiert:

Beispiel

#!/usr/bin/python3 import pymongo myclient = pymongo.MongoClient('mongodb://localhost:27017/') mydb = myclient['exampledb'] collist = mydb. list_collection_names() # collist = mydb.collection_names() if "sites" in collist: # Prüfen, ob die Sammlung sites existiert print("Die Sammlung existiert bereits!")

Hinweis:collection_names ist in der neuesten Version von Python veraltet. Nach Python 3.7+ wurde es in list_collection_names() geändert.


Operationen wie Hinzufügen, Löschen, Aktualisieren und Abfragen

Die folgende Tabelle listet weitere MongoDB-Operationen auf. Klicken Sie auf den jeweiligen Link für Details:

Laufende Nummer Funktion
1 Daten hinzufügen
2 Daten abfragen
3 Daten ändern
4 Daten sortieren
5 Daten löschen
Weitere Erweiterungen