So verwenden Sie die TinyDB -Datenbank in Python

So verwenden Sie die TinyDB -Datenbank in Python

In diesem Artikel wird eine Anleitung zur Installation und Verwendung der “behandeltTinydbModul, mit dem Datenbanken im JSON -Dateiformat erstellt und verwaltet werden können. Erhältlich als Drittanbietermodul für Python -Programme, Tinydb ist in reinem Python geschrieben und verfügt über viele nützliche Funktionen, mit denen Datenbankdateien abfragen und geändert werden können. Es unterstützt keine SQL -Style -Abfragen, verwendet jedoch eine eigene pythonische API zum Durchsuchen von Datenbankdateien. Tinydb Sie müssen nicht einen Datenbankserver erstellen, und auf alles kann direkt über Dateien zugegriffen werden, die auf einem Speichergerät gespeichert sind, ohne dass eine Serververbindung erforderlich ist. Neben Dokumenten oder Wörterbuchtyp -Python -Objekten unterstützt es auch Tabellen, sodass Sie Daten in mehreren Tabellen speichern und jede Tabelle unabhängig von anderen behalten können.

Installieren Sie TinyDB unter Linux

TinyDB ist in offiziellen Ubuntu -Repositories erhältlich, sodass Sie es mit dem folgenden Befehl über den Paketmanager installieren können:

$ sudo apt installieren python3-tinydb

Sie können installieren Tinydb In anderen Linux -Verteilungen vom Paketmanager. Eine alternative Methode zum Installieren Tinydb In Ubuntu und anderen Linux -Verteilungen ist die Verwendung der “zu verwendenPip" Paket-Manager.

Sie können PIP -Paketmanager in Ubuntu mit dem folgenden Befehl installieren:

$ sudo APT installieren Sie Python3-Pip

Sie können nach dem PIP -Paketmanager in offiziellen Repositories Ihrer Linux -Verteilung suchen und von dort aus installieren. Sie können PIP -Paketmanager auch installieren, indem Sie hier offizielle Installationsanweisungen folgen, die hier verfügbar sind. Sobald der PIP -Paket -Manager auf Ihrem Linux -System installiert ist, verwenden Sie den folgenden Befehl zur Installation Tinydb Modul:

$ pip3 TinyDB installieren

Grundlegende Syntax und Verwendung

Um eine neue zu erstellen JSON Datenbankdatei unterstützt durch Tinydb, Verwenden Sie die folgenden Python -Aussagen:

aus TinyDB TinyDB importieren
DB = TinyDB ('db.json ')
drucken (dB)

Die erste Aussage importiert das HaupttinyDB -Modul, damit seine Methoden in einem Python -Programm verwendet werden können. Als nächstes wird eine neue Instanz der TinyDB -Klasse erstellt, indem eine “geliefert wird“.JSON ”Datei als Hauptargument. Diese Anweisung erstellt eine neue Datenbank oder lädt eine vorhandene JSON -Datenbank, die von TinyDB erstellt wurde.

Nachdem Sie das obige Code -Beispiel ausgeführt haben, sollten Sie die folgende Ausgabe erhalten:

Da eine neue Datenbank erstellt wurde, gibt es derzeit keine Dokumente oder Datentabellen in der Datenbank. Verwenden Sie den folgenden Code, um ein neues Dokument (Python Dictionary) in die Tabelle einzufügen:

aus TinyDB TinyDB importieren
DB = TinyDB ('db.json ')
db.Inise ('Name': 'John', 'Rang': 2)
db.Inise ('Name': 'Peter', 'Rang': 1)
drucken (dB)

Mit der Methode „Einfügen“ können Dokumente oder Wörterbücher in die Datenbank eingefügt werden. Sie müssen ein Wörterbuch als Argument mit Ihrem erforderlichen Schlüsselwertpaar liefern. Nachdem Sie das obige Code -Beispiel ausgeführt haben, sollten Sie die folgende Ausgabe erhalten:

Wie Sie in der Ausgabe sehen können, enthält die Datenbank nun zwei Dokumente, die der Tabelle "_Default" zugewiesen sind. Wenn Sie das „DB“ öffnen.JSON ”Datei In einem Texteditor sollte sie so aussehen:

Um einer bestimmten Tabelle ein Dokument zuzuweisen, müssen Sie zuerst eine neue Tabelle erstellen. Sie können eine neue Tabelle erstellen, indem Sie die Methode "Tabelle" aufrufen. Hier ist ein Code -Beispiel:

aus TinyDB TinyDB importieren
DB = TinyDB ('db.json ')
db.Inise ('Name': 'John', 'Rang': 2)
db.Inise ('Name': 'Peter', 'Rang': 1)
Tabelle = db.Tabelle ('Früchte')
Tisch.insert ('apples': 50)
drucken (dB)

Wie Sie im Code -Beispiel sehen können, wurde die Methode „Tabelle“ aufgerufen, um eine neue Tabelle zu erstellen, die in der Datenbank gespeichert wird. Sie müssen nur einen Namen als Argument angeben. Sobald eine neue Tabelle erstellt wurde, ist der Rest der Prozedur gleich. Anstatt die Methode "Einfügen" in der Standarddatenbank aufzurufen, rufen Sie nun die Einfügenmethode in der frisch erstellten Tabelle auf.

Nach dem Ausführen der oben genannten Code -Beispiele sollten Sie die folgende Ausgabe erhalten:

Die Datenbank enthält jetzt zwei Tabellen. Wenn Sie die Datenbank in einem Texteditor öffnen, sollten Sie der Datenbank eine neue Tabelle hinzufügen:

Beachten Sie, dass alle Methoden, die in der Standarddatenbank aufgerufen werden können, auch mit Tabellen verwendet werden können.

Abfragen von Dokumenten in der Datenbank

Um Dokumente in der Datenbank durchzuführen. Hier ist ein Code -Beispiel:

von TinyDB import TinyDB, Abfrage
DB = TinyDB ('db.json ')
db.Inise ('Name': 'John', 'Rang': 2)
db.Inise ('Name': 'Peter', 'Rang': 1)
q = query ()
Ergebnis = db.Suche (q.Name == 'John')
Druck (Ergebnis)

Eine neue Instanz der "Abfrage" -Klasse wird erstellt, und dann wird in der Datenbank eine Suchmethode aufgerufen. Verwenden der DOT -Notation können Sie einen Dokumentschlüssel oder einen Dokumenttaste oder einen Feld auswählen und Ihren erforderlichen Suchbegriff auf der rechten Seite hinzufügen. Nachdem Sie das obige Code -Beispiel ausgeführt haben, sollten Sie die folgende Ausgabe erhalten:

['Name': 'John', 'Rang': 2]

Wenn es keine Übereinstimmungen gibt, wird eine leere Liste zurückgegeben. Sie können die Suchmethode auch in einer manuell erstellten Tabelle aufrufen.

von TinyDB import TinyDB, Abfrage
DB = TinyDB ('db.json ')
db.Inise ('Name': 'John', 'Rang': 2)
db.Inise ('Name': 'Peter', 'Rang': 1)
Tabelle = db.Tabelle ('Früchte')
Tisch.insert ('apples': 50)
q = query ()
Ergebnis = Tabelle.Suche (q.Äpfel < 100)
Druck (Ergebnis)

Die Code -Probe zeigt die Verwendung der Suchmethode in einer bestimmten Tabelle. Beachten Sie im Code, dass ein anderer Vergleichsbetreiber ('<' sign) has been used to query the database. After running the above code sample, you should get the following output:

['apples': 50]

Aktualisieren und Entfernen von Dokumenten

Um ein vorhandenes Dokument in der Datenbank zu aktualisieren, müssen Sie die Methode „Aktualisieren“ verwenden. Hier ist ein Code -Beispiel:

von TinyDB import TinyDB, Abfrage
DB = TinyDB ('db.json ')
db.Inise ('Name': 'John', 'Rang': 2)
db.Inise ('Name': 'Peter', 'Rang': 1)
q = query ()
db.update ('rank': 3, q.Name == 'John')
drucken (db.alle())

Mithilfe der oben erläuterten Abfrageklasse können Sie den Wert eines vorhandenen Feldes in der Datenbank aktualisieren. Übergeben Sie den Wert, der als erstes Argument an die Aktualisierungsmethode geändert werden soll, und übergeben Sie dann die Abfrage als zweites Argument. Mit der Methode „All“ kann alle in der Datenbank verfügbaren Dokumente abgerufen werden. Nachdem Sie das obige Code -Beispiel ausgeführt haben, sollten Sie die folgende Ausgabe erhalten, bei der der Rang von „John“ von 2 auf 3 aktualisiert wurde:

['Name': 'John', 'Rang': 3, 'Name': 'Peter', 'Rang': 1]

Um ein Dokument zu entfernen, müssen Sie die oben erläuterte Abfrage -Syntax verwenden. Hier ist ein Code -Beispiel:

von TinyDB import TinyDB, Abfrage
DB = TinyDB ('db.json ')
db.Inise ('Name': 'John', 'Rang': 2)
db.Inise ('Name': 'Peter', 'Rang': 1)
q = query ()
db.entfernen (q.Name == 'John')
drucken (db.alle())

Sie müssen eine Abfrage an die Methode entfernen, damit zugehörige Dokumente übereinstimmen und aus der Datenbank entfernt werden können. Nachdem Sie das obige Code -Beispiel ausgeführt haben, sollten Sie die folgende Ausgabe erhalten:

['Name': 'Peter', 'Rang': 1]

Abschluss

TinyDB bietet zahlreiche Komfort- und Helferfunktionen, um JSON -basierte Datenbanken zu erstellen und zu verwalten. Während Sie JSON -Dateien mithilfe des JSON -Moduls in Python verarbeiten können, ist TinyDB viel mehr als das und enthält ein umfassendes Abfragesystem, mit dem die Ergebnisse schnell mit einfachen Liner -Anweisungen abgerufen werden können.