64 Stimmen

Wie erstelle ich eine neue Datenbank in MongoDB mit PyMongo?

Kann ich eine neue Datenbank erstellen, indem ich mich einfach mit dem MongoDB-Server verbinde, oder gibt es eine andere Möglichkeit, sie mit Python zu erstellen? Wenn ja, wie funktioniert das?

102voto

DarthVader Punkte 49125

MongoDB erstellt Datenbanken und Sammlungen automatisch für Sie, wenn sie noch nicht vorhanden sind.

Um die Python-Bibliothek mit MongoDB zu verwenden, schauen Sie sich diese Dokumentation an.

Warnung: Das Beispiel basiert auf Pymongo 2.1. Wenn Sie Pymongo 3.4 verwenden, schauen Sie sich diese Dokumentation an.

from pymongo import Connection
connection = Connection()
db = connection['test-database']
collection = db['test-collection']

Also können Sie hier jeden Namen für die Datenbank und Sammlung verwenden.

32voto

宏杰李 Punkte 11184

Dies ist Mongodb Version 3.4:

from pymongo import MongoClient
client = MongoClient()
db = client.primer
coll = db.dataset

weder die Datenbank noch die Kollektion werden erstellt, bis Sie versuchen, ein Dokument zu schreiben.

Dokument: Python Treiber (PyMongo)

0voto

Ikar Pohorský Punkte 4073

Müssen Sie eine Sammlung erstellen, ohne die Dokumente einfügen zu müssen, um zuerst Validatoren festlegen zu können.

Zum Glück definiert das pymongo-Datenbankobjekt die create_collection-Methode:

create_collection(name, codec_options=None, read_preference=None, write_concern=None, read_concern=None, session=None, **kwargs)

Erstellt eine neue Sammlung in dieser Datenbank.

Normalerweise erfolgt die Sammlungserstellung automatisch. Diese Methode sollte nur verwendet werden, um Optionen bei der Erstellung anzugeben. CollectionInvalid wird ausgelöst, wenn die Sammlung bereits existiert.

...

Geändert in Version 3.11: Diese Methode wird jetzt innerhalb von Mehrdokumententransaktionen mit MongoDB 4.4+ unterstützt.

Geändert in Version 3.6: Hinzugefügter Sitzungsparameter.

Geändert in Version 3.4: Hinzufügen der Kollationsoption.

Geändert in Version 3.0: Hinzufügen der codec_options, read_preference und write_concern-Optionen.

Geändert in Version 2.2: Entferntes veraltetes Argument: Optionen

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X