sqlite3 python (Wie es für Entwickler funktioniert)
Das sqlite3-Modul in Python bietet eine Möglichkeit, mit SQLite-Datenbanken zu interagieren. Es ist Teil der Python Standardbibliothek, sodass Sie nichts Zusätzliches installieren müssen, um es zu verwenden. Lassen Sie uns seine Funktionen erkunden und einige Codebeispiele ansehen. Später in diesem Artikel werden wir uns IronPDF ansehen, eine PDF-Generierungsbibliothek, die von Iron Software entwickelt wurde.
SQLite ist eine leichtgewichtige, festplattenbasierte Datenbank, die keinen separaten Datenbankserverprozess erfordert. Das sqlite3-Modul bietet eine SQL-Schnittstellen-konforme Umgebung, um nahtlos mit einer vorhandenen oder neu erstellten Datenbank zu interagieren. Das Modul erzwingt die DB-API 2.0 Spezifikation, die durch PEP 249 beschrieben wird.
Grundlegende Nutzung
Hier ist ein einfaches Beispiel und mehrere SQL-Anweisungen, um Ihnen den Einstieg in sqlite3 zu erleichtern.
Verbindung zu einer Datenbank
Zuerst müssen Sie eine Verbindung zu Ihrer SQLite-Datenbank herstellen. Wenn die Datenbankdatei fehlt, wird sie generiert:
import sqlite3
# Connect to the database (or create it if it doesn't exist)
conn = sqlite3.connect('example.db')
# Create a cursor object
cur = conn.cursor()
import sqlite3
# Connect to the database (or create it if it doesn't exist)
conn = sqlite3.connect('example.db')
# Create a cursor object
cur = conn.cursor()
Erstellen einer Tabelle
Verwenden Sie die SQL-Anweisung CREATE TABLE, um eine neue Datentabelle zu erstellen:
# Create a table using SQL statements
cur.execute('''
CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
age INTEGER
)
''')
# Create a table using SQL statements
cur.execute('''
CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
age INTEGER
)
''')
Daten einfügen
So fügen Sie Daten in die Datenbanktabelle ein:
# Insert data into the table
cur.execute('''
INSERT INTO users (name, age) VALUES (?, ?)
''', ('Alice', 30))
# Commit the transaction using the connection object
conn.commit()
# Insert data into the table
cur.execute('''
INSERT INTO users (name, age) VALUES (?, ?)
''', ('Alice', 30))
# Commit the transaction using the connection object
conn.commit()
Datenabfrage
Sie können SQL-Befehle ausführen und Ergebnisse aus der Datenbanktabelle abrufen:
# Query the database
cur.execute('SELECT * FROM users')
# Fetch all results
rows = cur.fetchall()
# Print the results
for row in rows:
print(row)
# Query the database
cur.execute('SELECT * FROM users')
# Fetch all results
rows = cur.fetchall()
# Print the results
for row in rows:
print(row)
Datenaktualisierung
Um vorhandene Daten in der Tabelle zu aktualisieren:
# Update data in the table
cur.execute('''
UPDATE users SET age = ? WHERE name = ?
''', (31, 'Alice'))
# Commit the transaction
conn.commit()
# Update data in the table
cur.execute('''
UPDATE users SET age = ? WHERE name = ?
''', (31, 'Alice'))
# Commit the transaction
conn.commit()
Datenlöschung
Um Daten aus den Datenbankzeilen zu löschen, in denen der Name Alice ist:
# Delete data from the table
cur.execute('''
DELETE FROM users WHERE name = ?
''', ('Alice',))
# Commit the transaction
conn.commit()
# Delete data from the table
cur.execute('''
DELETE FROM users WHERE name = ?
''', ('Alice',))
# Commit the transaction
conn.commit()
Die Verbindung schließen
Denken Sie daran, sowohl den Cursor als auch die Verbindung zu schließen, wenn Sie fertig sind:
# Close the cursor and connection
cur.close()
conn.close()
# Close the cursor and connection
cur.close()
conn.close()
Erweiterte Funktionen
Verwendung von Context Managern
Sie können Context-Manager verwenden, um die Verbindung automatisch zu schließen:
with sqlite3.connect('example.db') as conn:
cur = conn.cursor()
cur.execute('SELECT * FROM users')
rows = cur.fetchall()
for row in rows:
print(row)
with sqlite3.connect('example.db') as conn:
cur = conn.cursor()
cur.execute('SELECT * FROM users')
rows = cur.fetchall()
for row in rows:
print(row)
Verarbeitung von Transaktionen
SQLite unterstützt Transaktionen, und Sie können BEGIN, COMMIT und ROLLBACK verwenden, um sie zu verwalten:
try:
conn.execute('BEGIN')
cur.execute('INSERT INTO users (name, age) VALUES (?, ?)', ('Bob', 25))
conn.commit()
except sqlite3.Error as e:
conn.rollback()
print(f"An error occurred: {e}")
try:
conn.execute('BEGIN')
cur.execute('INSERT INTO users (name, age) VALUES (?, ?)', ('Bob', 25))
conn.commit()
except sqlite3.Error as e:
conn.rollback()
print(f"An error occurred: {e}")
Einführung in IronPDF

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 kommerzielle Leistung bei 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:
Passen Sie PDFs mit Kopfzeilen, Fußzeilen, Seitenzahlen und anpassbaren Rändern an. Unterstützt responsive Layouts und benutzerdefinierte Papierformate.
Einhaltung von Standards:
Erfüllt PDF-Standards wie PDF/A und PDF/UA, unterstützt UTF-8-Zeichenkodierung und verwaltet Ressourcen wie Bilder, CSS und Schriftarten.
Erstellen von PDF-Dokumenten mit IronPDF und SQLite3 Python
import sqlite3
from ironpdf import *
# Apply your license key
License.LicenseKey = "key"
# Connect to the sqlite database file (or create it if it doesn't exist)
conn = sqlite3.connect('example.db')
# Create a cursor object for database connection
cur = conn.cursor()
# Create a table SQL command
cur.execute('''
CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
age INTEGER
)
''')
# Insert data into the table
cur.execute('''
INSERT INTO users (name, age) VALUES (?, ?)
''', ('IronUser1', 30))
cur.execute('''
INSERT INTO users (name, age) VALUES (?, ?)
''', ('IronUser2', 31))
cur.execute('''
INSERT INTO users (name, age) VALUES (?, ?)
''', ('IronUser3', 25))
cur.execute('''
INSERT INTO users (name, age) VALUES (?, ?)
''', ('IronUser4', 28))
# Commit the transaction using the connection object
conn.commit()
# Query the database
cur.execute('SELECT * FROM users')
# Fetch all results
rows = cur.fetchall()
# Print the results
for row in rows:
print(row)
# Update data in the table
cur.execute('''
UPDATE users SET age = ? WHERE name = ?
''', (31, 'Alice'))
# Commit the transaction
conn.commit()
# Delete data from the table
cur.execute('''
DELETE FROM users WHERE name = ?
''', ('IronUser1',))
# Commit the transaction
conn.commit()
# Initialize PDF renderer
renderer = ChromePdfRenderer()
# Create a PDF from an HTML string using Python
content = "<h1>Awesome Iron PDF with Sqlite3</h1>"
content += "<p>table data</p>"
for row in rows:
content += "<p>" + str(row) + "</p>"
# Close the cursor and connection
cur.close()
conn.close()
# Render the HTML as a PDF
pdf = renderer.RenderHtmlAsPdf(content)
# Export to a file
pdf.SaveAs("DemoSqlite3.pdf")
import sqlite3
from ironpdf import *
# Apply your license key
License.LicenseKey = "key"
# Connect to the sqlite database file (or create it if it doesn't exist)
conn = sqlite3.connect('example.db')
# Create a cursor object for database connection
cur = conn.cursor()
# Create a table SQL command
cur.execute('''
CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
age INTEGER
)
''')
# Insert data into the table
cur.execute('''
INSERT INTO users (name, age) VALUES (?, ?)
''', ('IronUser1', 30))
cur.execute('''
INSERT INTO users (name, age) VALUES (?, ?)
''', ('IronUser2', 31))
cur.execute('''
INSERT INTO users (name, age) VALUES (?, ?)
''', ('IronUser3', 25))
cur.execute('''
INSERT INTO users (name, age) VALUES (?, ?)
''', ('IronUser4', 28))
# Commit the transaction using the connection object
conn.commit()
# Query the database
cur.execute('SELECT * FROM users')
# Fetch all results
rows = cur.fetchall()
# Print the results
for row in rows:
print(row)
# Update data in the table
cur.execute('''
UPDATE users SET age = ? WHERE name = ?
''', (31, 'Alice'))
# Commit the transaction
conn.commit()
# Delete data from the table
cur.execute('''
DELETE FROM users WHERE name = ?
''', ('IronUser1',))
# Commit the transaction
conn.commit()
# Initialize PDF renderer
renderer = ChromePdfRenderer()
# Create a PDF from an HTML string using Python
content = "<h1>Awesome Iron PDF with Sqlite3</h1>"
content += "<p>table data</p>"
for row in rows:
content += "<p>" + str(row) + "</p>"
# Close the cursor and connection
cur.close()
conn.close()
# Render the HTML as a PDF
pdf = renderer.RenderHtmlAsPdf(content)
# Export to a file
pdf.SaveAs("DemoSqlite3.pdf")
Code-Erklärung
Dieses Python-Programm zeigt, wie die SQLite-Bibliothek verwendet wird, um eine Datenbank zu erstellen, Daten darin einzufügen, Abfragen durchzuführen, Datensätze zu aktualisieren, Datensätze zu löschen und schließlich ein PDF-Dokument mit IronPDF zu erstellen.
-
Bibliotheken importieren:
sqlite3: Pythons integriertes Modul für die Arbeit mit SQLite-Datenbanken.ironpdf: Importieren von Komponenten aus IronPDF, was die PDF-Generierung ermöglicht.
-
Verbindung zur Datenbank:
- Stellt eine Verbindung zu einer SQLite-Datenbank mit dem Namen
example.dbher.
- Stellt eine Verbindung zu einer SQLite-Datenbank mit dem Namen
-
Erstellen einer Tabelle:
- Definiert eine SQLite-Tabelle
usersmit den Spaltenid(INTEGER, PRIMARY KEY),name(TEXT, NOT NULL) undage(INTEGER).
- Definiert eine SQLite-Tabelle
-
Daten einfügen:
- Mehrere Datenzeilen in die Tabelle
userseinfügen.
- Mehrere Datenzeilen in die Tabelle
-
Transaktionen ausführen:
- Macht die Änderungen in der Datenbank dauerhaft.
-
Abfrage der Datenbank:
- Führt eine SELECT-Anweisung aus, um alle Zeilen aus der Tabelle
usersabzurufen.
- Führt eine SELECT-Anweisung aus, um alle Zeilen aus der Tabelle
-
Datenaktualisierung:
- Aktualisiert den
ageeiner Benutzerin namens 'Alice'.
- Aktualisiert den
-
Datenlöschung:
- Löscht einen Benutzer namens 'IronUser1' aus der Tabelle
users.
- Löscht einen Benutzer namens 'IronUser1' aus der Tabelle
-
PDF-Erstellung:
- Verwendet IronPDF (
ChromePdfRenderer), um aus HTML-Inhalten ein PDF-Dokument zu erstellen. - Kombiniert Header- und Tabellendaten (aus der Datenbank abgerufen) in die HTML-Inhalte.
- Speichert das PDF-Dokument unter
DemoSqlite3.pdf.
- Verwendet IronPDF (
- Schließen der Verbindungen:
- Schließt den Cursor (
cur) und die Verbindung (conn), um Ressourcen freizugeben.
- Schließt den Cursor (
Dieses Skript zeigt einen vollständigen Workflow von der Datenbankeinrichtung über die Datenmanipulation bis hin zur PDF-Erstellung mit den Bibliotheken SQLite3 und IronPDF von Python.
Ausgabe


IronPDF-Lizenz
IronPDF läuft auf einem Lizenzschlüssel. IronPDF for Python bietet einen kostenlosen Testlizenzschlüssel an, damit Benutzer die umfangreichen Funktionen vor dem Kauf testen können.
Platzieren Sie hier den Lizenzschlüssel:
import {IronPdfGlobalConfig, PdfDocument} from "@ironsoftware/ironpdf";
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "Add Your key here";
import {IronPdfGlobalConfig, PdfDocument} from "@ironsoftware/ironpdf";
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "Add Your key here";
Abschluss

Das sqlite3-Modul ist ein leistungsstarkes und einfach zu verwendendes Werkzeug, um mit SQLite-Datenbanken in Python zu arbeiten. Seine Integration in die Python-Standardbibliothek macht einfache und komplexe Datenbankoperationen bequem. IronPDF bietet eine Testlizenz an. Anschließend beginnt die Lizenz bei $999 und geht aufwärts.




