Zum Fußzeileninhalt springen
PYTHON-HILFE

sqlite utils Python (Wie es für Entwickler funktioniert)

Das SQLite-utils Python-Paket ist ein vielseitiges Werkzeug, das Python-Hilfsfunktionen für die Arbeit mit SQLite-Datenbanken enthält. Es bietet eine Befehlszeilenschnittstelle (CLI) und eine Python-Bibliothek, die das Erstellen, Manipulieren und Abfragen von SQLite-Datenbanken erleichtert. Lassen Sie uns in seine Funktionen eintauchen und einige Codebeispiele ansehen. Later in this article, we will explore IronPDF, a PDF generation library developed by Iron Software.

Übersicht über SQLite-utils

SQLite-utils wurde entwickelt, um verschiedene Aufgaben im Zusammenhang mit der Manipulation von SQLite-Datenbanken zu vereinfachen. Einige seiner wichtigsten Funktionen sind:

  • Erstellen und Verwalten von Datenbanken: Erstellen Sie mühelos neue Datenbanken und Tabellen.
  • Einfügen und Abfragen von Daten: Fügen Sie JSON-Daten, CSV- oder TSV-Dateien ein und führen Sie SQL-Abfragen aus.
  • Volltextsuche: Konfigurieren und führen Sie Volltextsuchabfragen aus.
  • Schematransformationen: Führen Sie Schemaänderungen durch, die direkt von SQLite's ALTER TABLE nicht unterstützt werden.
  • Daten-Normalisierung: Extrahieren Sie Spalten in separate Tabellen, um Daten zu normalisieren.
  • Benutzerdefinierte SQL-Funktionen: Installieren Sie Plugins, um benutzerdefinierte SQL-Funktionen hinzuzufügen.

Installation

Sie können SQLite-utils mit pip installieren:

pip install sqlite-utils
pip install sqlite-utils
SHELL

Oder, wenn Sie Homebrew auf macOS verwenden:

brew install sqlite-utils
brew install sqlite-utils
SHELL

Verwendung von SQLite-utils als CLI-Tool

Mit dem CLI-Tool können Sie verschiedene Operationen direkt von der Kommandozeile ausführen. Hier sind einige Beispiele:

Erstellen einer Datenbank und Einfügen von Daten

Lassen Sie uns eine neue SQLite-Datenbank erstellen und einige Daten aus einer CSV-Datei einfügen:

# Create a new database and insert data from a CSV file
sqlite-utils insert dogs.db dogs dogs.csv --csv
# Create a new database and insert data from a CSV file
sqlite-utils insert dogs.db dogs dogs.csv --csv
SHELL

Datenabfrage

Der folgende Befehl zeigt, wie Sie eine SQL-Abfrage aus der Datenbank ausführen würden:

# Query the database and display results in JSON format
sqlite-utils dogs.db "select * from dogs" --json
# Query the database and display results in JSON format
sqlite-utils dogs.db "select * from dogs" --json
SHELL

Auflisten von Tabellen

Listen Sie alle Tabellen in der Datenbank zusammen mit ihren Zeilenanzahlen auf:

sqlite-utils tables dogs.db --counts
sqlite-utils tables dogs.db --counts
SHELL

Verwendung von SQLite-utils als Python-Bibliothek

Sie können SQLite-utils auch als Python-Bibliothek verwenden, um programmgesteuert mit SQLite-Datenbanken zu interagieren.

Erstellen einer Datenbank und Einfügen von Daten

So erstellen Sie eine neue Datenbank und fügen Daten mit Python ein:

import sqlite_utils

# Create a new database
db = sqlite_utils.Database("demo_database.db")

# Insert data into a table
db["dogs"].insert_all([
    {"id": 1, "age": 4, "name": "Cleo"},
    {"id": 2, "age": 2, "name": "Pancakes"}
], pk="id")
import sqlite_utils

# Create a new database
db = sqlite_utils.Database("demo_database.db")

# Insert data into a table
db["dogs"].insert_all([
    {"id": 1, "age": 4, "name": "Cleo"},
    {"id": 2, "age": 2, "name": "Pancakes"}
], pk="id")
PYTHON

Datenabfrage

Sie können SQL-Abfragen ausführen und Ergebnisse abrufen:

# Run a query and fetch results
rows = db.query("SELECT * FROM dogs")
for row in rows:
    print(row)
# Run a query and fetch results
rows = db.query("SELECT * FROM dogs")
for row in rows:
    print(row)
PYTHON

Volltextsuche

Aktivieren Sie die Volltextsuche in einer Tabelle und führen Sie Suchabfragen aus:

# Enable full-text search on the 'name' column
db["dogs"].enable_fts(["name"])

# Run a search query for the term "Cleo"
results = db["dogs"].search("Cleo")
for result in results:
    print(result)
# Enable full-text search on the 'name' column
db["dogs"].enable_fts(["name"])

# Run a search query for the term "Cleo"
results = db["dogs"].search("Cleo")
for result in results:
    print(result)
PYTHON

Einführung in IronPDF

sqlite utils Python (Wie es für Entwickler funktioniert): Abbildung 1 - IronPDF: Die Python PDF-Bibliothek

IronPDF ist eine leistungsstarke Python-Bibliothek, die zum Erstellen, Bearbeiten und Signieren von PDFs unter Verwendung von HTML, CSS, Bildern und JavaScript entwickelt wurde. Sie bietet eine kommerzielle Leistung mit geringem Speicherbedarf. Hauptmerkmale sind:

HTML-zu-PDF-Konvertierung:

Konvertieren Sie HTML-Dateien, HTML-Zeichenketten und URLs in PDFs. Beispielsweise eine Webseite mithilfe des Chrome-PDF-Renderers als PDF rendern.

Plattformübergreifende Unterstützung:

Kompatibel mit verschiedenen .NET-Plattformen, einschließlich .NET Core, .NET Standard und .NET Framework. Es unterstützt Windows, Linux und macOS.

Bearbeiten und Signieren:

Eigenschaften festlegen, Sicherheit mit Passwörtern und Berechtigungen hinzufügen und digitale Signaturen auf Ihre PDFs anwenden.

Seitenvorlagen und Einstellungen:

Sie können PDFs mit Kopf-, Fußzeilen, Seitenzahlen und einstellbaren Rändern anpassen. Es unterstützt außerdem benutzerdefinierte Papiergrößen und responsive Layouts.

Einhaltung von Standards:

Entspricht den PDF-Standards, einschließlich PDF/A und PDF/UA, unterstützt die UTF-8-Zeichencodierung und verwaltet Ressourcen wie Bilder, CSS und Schriftarten.

Generieren von PDF-Dokumenten mit IronPDF und Sqlite Utils

import sqlite_utils
from ironpdf import ChromePdfRenderer, License

# Apply your license key
License.LicenseKey = "key"

# Initialize a new database
db = sqlite_utils.Database("mydatabase.db")

# Define a table schema
schema = {
    "id": int,
    "name": str,
    "age": int
}

# Create a table with the defined schema
db["users"].create(schema)

# Sample data to insert into the table
data = [
    {"id": 1, "name": "Alice", "age": 30},
    {"id": 2, "name": "Bob", "age": 28},
    {"id": 3, "name": "Charlie", "age": 32}
]

# Insert data into the table
db["users"].insert_all(data)

# Query all records from the table
rows = db.query("SELECT * FROM users")

# Initialize the PDF renderer
renderer = ChromePdfRenderer()

# Create HTML content for the PDF
content = "<h1>Awesome IronPDF with Sqlite-Utils</h1>"
content += "<p>Table data:</p>"
for row in rows:
    content += f"<p>{row}</p>"

# Render the HTML content as PDF
pdf = renderer.RenderHtmlAsPdf(content)

# Save the generated PDF as a file
pdf.save_as("DemoSqliteUtils.pdf")
import sqlite_utils
from ironpdf import ChromePdfRenderer, License

# Apply your license key
License.LicenseKey = "key"

# Initialize a new database
db = sqlite_utils.Database("mydatabase.db")

# Define a table schema
schema = {
    "id": int,
    "name": str,
    "age": int
}

# Create a table with the defined schema
db["users"].create(schema)

# Sample data to insert into the table
data = [
    {"id": 1, "name": "Alice", "age": 30},
    {"id": 2, "name": "Bob", "age": 28},
    {"id": 3, "name": "Charlie", "age": 32}
]

# Insert data into the table
db["users"].insert_all(data)

# Query all records from the table
rows = db.query("SELECT * FROM users")

# Initialize the PDF renderer
renderer = ChromePdfRenderer()

# Create HTML content for the PDF
content = "<h1>Awesome IronPDF with Sqlite-Utils</h1>"
content += "<p>Table data:</p>"
for row in rows:
    content += f"<p>{row}</p>"

# Render the HTML content as PDF
pdf = renderer.RenderHtmlAsPdf(content)

# Save the generated PDF as a file
pdf.save_as("DemoSqliteUtils.pdf")
PYTHON

Code-Erklärung

Dieses Skript kombiniert die Funktionalitäten des SQLite-utils Python-Pakets und der IronPDF-Bibliothek, um eine SQLite-Datenbank zu verwalten und ein PDF-Dokument zu erstellen. Im Folgenden wird schrittweise erklärt, was der Code tut:

  1. Datenbank-Initialisierung:

    • Initialisiert eine SQLite-Datenbank mit dem Namen "mydatabase.db" unter Verwendung von SQLite-utils.
  2. Tabellenerstellung:

    • Definiert ein Tabellenschema mit den Spalten id, name und age.
    • Erstellt eine Tabelle mit dem Namen "users" in der SQLite-Datenbank mit dem definierten Schema.
  3. Daten-Einfügung:

    • Fügt mehrere Datensätze in die "users"-Tabelle mit SQLite-utils ein.
  4. Datenabfrage:

    • Ruft alle Datensätze aus der "users"-Tabelle ab und erstellt eine HTML-Darstellung der Daten.
  5. PDF-Erstellung:
    • Verwendet IronPDF, um ein PDF-Dokument zu erstellen.
    • Erzeugt HTML-Inhalte für das PDF-Dokument, einschließlich Kopfzeilen und Tabellendaten, die aus der SQLite-Datenbank abgerufen wurden.
    • Speichert das erstellte PDF-Dokument als "DemoSqliteUtils.pdf".

Insgesamt demonstriert dieses Skript, wie man SQLite-utils für Datenbankverwaltungsaufgaben wie Tabellenerstellung, Dateneinfügung und Abfrage in Kombination mit IronPDF für die Erstellung von PDF-Dokumenten aus dynamischen Inhalten, die aus einer SQLite-Datenbank in Python-Anwendungen stammen, nutzt.

Ausgabe

sqlite utils Python (Wie es für Entwickler funktioniert): Abbildung 2 - Beispiel Konsolenausgabe

PDF

sqlite utils Python (Wie es für Entwickler funktioniert): Abbildung 3 - Beispiel PDF-Ausgabe, die IronPDF zur Berichtserstellung verwendet

IronPDF-Lizenz

IronPDF läuft auf dem Python-Lizenzschlüssel. IronPDF für Python bietet einen kostenlosen Testlizenzschlüssel an, mit dem Benutzer die umfangreichen Funktionen vor dem Kauf testen können.

Platzieren Sie den Lizenzschlüssel am Anfang des Skripts, bevor Sie das IronPDF-Paket verwenden:

from ironpdf import License

# Apply your license key
License.LicenseKey = "key"
from ironpdf import License

# Apply your license key
License.LicenseKey = "key"
PYTHON

Abschluss

SQLite-utils ist ein leistungsfähiges Tool für die Arbeit mit SQLite-Datenbanken. Es bietet sowohl ein CLI als auch eine Python-Bibliothek. Egal, ob Sie Daten schnell von der Kommandozeile aus manipulieren oder SQLite-Operationen in Ihre Python-Anwendungen integrieren möchten, SQLite bietet eine flexible und benutzerfreundliche Lösung.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen