Heim >Backend-Entwicklung >Python-Tutorial >Ein einfaches und klares Tutorial zum Betrieb von Mongodb mit Python3
Dieser Artikel stellt hauptsächlich ein detailliertes und leicht verständliches Tutorial zu Python3 Operationen Mongodb vor. Es wird detailliert beschrieben, wie man eine Verbindung zur Datenbank herstellt und betreiben Sie die Datenbank. Sie können herausfinden, ob Sie sie benötigen.
Mit der Datenbank verbinden
Sie müssen eine Adresse und eine Schnittstelle angeben, um eine Verbindung mit der Datenbank herzustellen. Zuerst müssen Sie das Paket noch importieren.
from pymongo import MongoClient conn = MongoClient('localhost',27017)
Natürlich können Sie folgende Schreibweise verwenden:
conn = MongoClient('mongodb://localhost:27017/')
mongodb Es ist nicht erforderlich, eine Datenbank im Voraus zu erstellen, sondern sie direkt zu verwenden. Wenn festgestellt wird, dass sie nicht vorhanden ist, wird sie automatisch erstellt.
db = conn.testdb
Mit der obigen Anweisung wird eine testdb-Datenbank erstellt. Wenn jedoch keine Daten eingegeben werden vorhanden sind, können Sie die Datenbank im Verwaltungstool nicht sehen (wird nicht angezeigt).
Daten einfügen
Der erste Schritt besteht zunächst darin, ein Datenelement einzufügen und einen Blick darauf zu werfen.
Einfügen einzelner Datensätze
from pymongo import MongoClient conn = MongoClient('mongodb://localhost:27017/') db = conn.testdb db.col.insert({"name":'yanying','province':'江苏','age':25})
Hinweis: Der Datenbankverbindungsvorgang wird in den folgenden Vorgängen ignoriert und der Kerncode wird direkt geschrieben dafür selbst.
In der Python-Konsole passiert nichts, das bedeutet Erfolg. Verwenden Sie das Verwaltungstool, um die Datenbankeinträge anzuzeigen. Es enthält tatsächlich Daten.
Mehrere Datensätze einfügen
Mongodb kann auch mehrere Daten gleichzeitig einfügen
db.col.insert([ {"name":'yanying','province':'江苏','age':25}, {"name":'张三','province':'浙江','age':24}, {"name":'张三1','province':'浙江1','age':25}, {"name":'张三2','province':'浙江2','age':26}, {"name":'张三3','province':'浙江3','age':28}, ])
AbfrageDaten
Als nächstes fragen wir die Daten ab, die wir gerade eingefügt haben.
Einzelne Abfrage
Wir können find_one() verwenden, um einen Datensatz abzufragen.
db.col.find_one()
Die obige Anweisung kann einen Mongodb-Datensatz abfragen. Die zusätzliche _id im Datensatz ist ein eindeutiger Wert, der automatisch von Mongodb generiert wird.
Kopieren Sie den Code Der Code lautet wie folgt:
{'_id': ObjectId('5925351ad92fac3250b9ae3f'), 'name': 'yanying', 'province': '江苏', 'age': 25}
Wir werden einige Daten für die folgenden Vorgänge einfügen. (Zehntausende Wörter weglassen)
Alle abfragen
Wenn wir alle Datensätze abfragen müssen, können wir db.col.find verwenden ( ), aber was gefunden wird, ist ein Ergebnisressourcensatz.
Wir können for verwenden, um alle Datensätze aufzulisten.
for item in db.col.find(): print(item)
Auf diese Weise können Sie alle Datensätze erhalten.
{'_id': ObjectId('5925351ad92fac3250b9ae3f'), 'name': 'yanying', 'province': '江苏', 'age': 25} {'_id': ObjectId('592550e5d92fac0b8c449f87'), 'name': 'zhangsan', 'province': '北京', 'age': 29} {'_id': ObjectId('592550f6d92fac3548c20b1a'), 'name': 'lisi', 'province': '上海', 'age': 22} {'_id': ObjectId('59255118d92fac43dcb1999a'), 'name': '王二麻', 'province': '广东', 'age': 30}
Bedingte Abfrage
Fügen Sie einfach die Abfragebedingungen als Parameter ein, um die Daten zu filtern.
for item in db.col.find({'name':"yanying"}): print(item)
Abfrageergebnisse
Der Code lautet wie folgt:
{'_id': ObjectId('5925351ad92fac3250b9ae3f'), 'name': 'yanying', 'province': '江苏', 'age': 25}
Natürlich können Sie auch Datensätze abfragen, die unter einem bestimmten Wert liegen Wert
for item in db.col.find({"age":{"$lt":25}}): print(item)
oder Datensätze größer als ein bestimmter Wert
for item in db.col.find({"age":{"$gt":25}}): print(item)
Statistische Abfrage
Der obige Code kann die Zahl zählen aller Datensätze
db.col.find().count() // 4
Oder fügen Sie einige Bedingungen hinzu
db.col.find({"age":{"$gt":25}}).count() //2
Datensätze basierend auf _id abfragen
_id wird automatisch von mongodb generiert. Die ID ist vom Typ ObjectId. Wenn Sie sie verwenden möchten, müssen Sie den Typ konvertieren.
Diese Methode wird in Python3 bereitgestellt, erfordert jedoch den Import einer Bibliothek.
from bson.objectid import ObjectId
Auf diese Weise können Sie _id direkt zum Abfragen verwenden.
collection.find_one({'_id':ObjectId('592550e5d92fac0b8c449f87')})
Sortieren Sie die Ergebnisse
Fügen Sie einfach die Felder, die sortiert werden müssen, in die Methode sortieren ein aufsteigende Reihenfolge
db.col.find().sort("age")
Sie können aber auch einige Parameter hinzufügen, um die Sortiermethode zu ändern. Zum Beispiel umgekehrte Reihenfolge, aber denken Sie daran, zuerst die Pymongo-Bibliothek zu importieren
import pymongo db.col.find().sort("UserName",pymongo.DESCENDING)
Sie können die Reihenfolge auch aufsteigend festlegen, obwohl dies die Standardreihenfolge ist
for item in db.col.find().sort('age',pymongo.ASCENDING): print(item)
Das Aktualisieren von Daten ist sehr einfach, Sie benötigen lediglich eine Bedingung und die Daten, die aktualisiert werden müssen
Kopieren Sie den Code Der Code lautet wie folgt:
db.col.update({'_id':ObjectId('59255118d92fac43dcb1999a')},{'$set':{'name':'王二麻33333'}})
Das Ergebnis lautet wie folgt: Aus Wang Erma wird Wang Erma 33333
Der Code lautet wie folgt:
{'_id': ObjectId('59255118d92fac43dcb1999a'), 'name': '王二麻33333', 'province': '广东', 'age': 30}
Um Daten zu löschen, verwenden Sie die Methode „remove()“. Wenn die Methode Bedingungen enthält, löschen Sie die angegebenen Bedingungsdaten, andernfalls löschen Sie alle
Löschen Sie den Benutzer, dessen Name Wang Erma 33333 ist.
db.col.remove({'name':'王二麻33333'})
Alle Daten löschen (mit Vorsicht verwenden)
db.col.remove()
Das obige ist der detaillierte Inhalt vonEin einfaches und klares Tutorial zum Betrieb von Mongodb mit Python3. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!