0Pricing
Python Academy · Lektion

Verbindungen herstellen und Tabellen erstellen

Eine Datenbank öffnen und ein Schema definieren

Verbindungen herstellen und Tabellen erstellen ist eine kostenlose Python Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Python Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Python Academy-Kurs umfasst insgesamt 4 Lektionen.

Was ist sqlite3?

Python enthält das Modul sqlite3 in seiner Standardbibliothek. Damit können Sie mit SQLite arbeiten, einer schlanken, dateibasierten SQL-Datenbank, die keinen separaten Server benötigt.

  • Keine Installation erforderlich
  • Die gesamte Datenbank befindet sich in einer einzigen Datei
  • Ideal für Prototypen, Tests und kleine Anwendungen
import sqlite3
print(sqlite3.version)

Eine Verbindung zu einer Datenbank herstellen

Verwenden Sie sqlite3.connect(), um eine Datenbank zu öffnen. Wenn die Datei nicht existiert, erstellt SQLite sie.

Durch die Übergabe von ':memory:' erstellen Sie eine temporäre Datenbank im Arbeitsspeicher, die beim Schließen der Verbindung verschwindet.

import sqlite3
conn = sqlite3.connect(':memory:')
print('Connected:', conn)
conn.close()

Das Cursor-Objekt

Um SQL auszuführen, benötigen Sie einen Cursor. Rufen Sie conn.cursor() auf, um einen zu erhalten, und verwenden Sie anschließend cursor.execute(), um SQL-Anweisungen zu senden.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
print('Cursor ready:', cur)
conn.close()

Eine Tabelle erstellen

Definieren Sie ein Schema mit CREATE TABLE. Jede Spalte benötigt einen Namen und einen Typ wie INTEGER, TEXT oder REAL.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE users (id INTEGER, name TEXT, age INTEGER)')
print('Table created')
conn.close()

Primärschlüssel

Ein Primärschlüssel identifiziert jede Zeile eindeutig. Wenn Sie INTEGER PRIMARY KEY deklarieren, erhöht SQLite den Wert automatisch für Sie.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE books (id INTEGER PRIMARY KEY, title TEXT)')
print('books table ready')
conn.close()

IF NOT EXISTS

Wenn Sie CREATE TABLE zweimal ausführen, tritt ein Fehler auf. Fügen Sie IF NOT EXISTS hinzu, damit die Anweisung wiederholt und sicher ausgeführt werden kann.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
sql = 'CREATE TABLE IF NOT EXISTS notes (id INTEGER PRIMARY KEY, body TEXT)'
cur.execute(sql)
cur.execute(sql)
print('No error on second run')
conn.close()

Spalten-Constraints

Constraints setzen Datenregeln auf Datenbankebene durch.

  • NOT NULL erfordert einen Wert
  • UNIQUE verhindert Duplikate
  • DEFAULT stellt einen Ersatzwert bereit
import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE accounts (id INTEGER PRIMARY KEY, email TEXT NOT NULL UNIQUE, active INTEGER DEFAULT 1)')
print('accounts table with constraints')
conn.close()

Das Schema untersuchen

SQLite speichert Informationen zum Schema in sqlite_master. Fragen Sie diese Tabelle ab, um Ihre Tabellen aufzulisten.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)')
cur.execute("SELECT name FROM sqlite_master WHERE type='table'")
print(cur.fetchall())
conn.close()

In einer Datei speichern

Um Daten dauerhaft zu speichern, übergeben Sie einen Dateinamen an connect(). Die Datenbank bleibt auch nach dem Ende Ihres Programms erhalten.

Sie müssen conn.commit() aufrufen, um Änderungen auf die Festplatte zu schreiben.

import sqlite3
conn = sqlite3.connect('app.db')
cur = conn.cursor()
cur.execute('CREATE TABLE IF NOT EXISTS items (id INTEGER PRIMARY KEY, name TEXT)')
conn.commit()
print('Saved to app.db')
conn.close()

Eine Tabelle löschen

Entfernen Sie eine Tabelle mit DROP TABLE. Verwenden Sie IF EXISTS, um Fehler zu vermeiden, wenn die Tabelle bereits gelöscht wurde.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE temp (id INTEGER)')
cur.execute('DROP TABLE IF EXISTS temp')
print('Dropped temp table')
conn.close()

Die Verbindung immer schließen

Geöffnete Verbindungen halten Dateihandles offen. Schließen Sie sie nach Abschluss immer mit conn.close(), oder verwenden Sie einen with-Block für die automatische Bereinigung.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE t (id INTEGER)')
conn.close()
print('Connection closed cleanly')

Kurze Überprüfung

Testen Sie Ihr Verständnis vom Erstellen von Tabellen.

Zusammenfassung

Sie haben die Grundlagen von sqlite3 kennengelernt.

  • connect() öffnet (oder erstellt) eine Datenbankdatei
  • cursor() liefert Ihnen ein Objekt zum Ausführen von SQL
  • CREATE TABLE definiert das Schema mit Datentypen und Constraints
  • commit() speichert Änderungen dauerhaft und close() gibt die Verbindung frei

Als Nächstes werden Sie Zeilen einfügen und auslesen.

Häufig gestellte Fragen

Ist die Lektion „Verbindungen herstellen und Tabellen erstellen“ kostenlos?

Ja — der vollständige Text von „Verbindungen herstellen und Tabellen erstellen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Python Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Python Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Verbindungen herstellen und Tabellen erstellen“?

Eine Datenbank öffnen und ein Schema definieren Du übst Python Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Python Academy zu starten?

Keine Vorkenntnisse erforderlich. Python Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.

Wie lange dauert die Lektion „Verbindungen herstellen und Tabellen erstellen“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Python Academy-Lektion Code schreiben und ausführen?

Ja. Jede Python Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Verbindungen herstellen und Tabellen erstellen
  2. Insert, Select, Update, Delete
  3. Parametrisierte Abfragen
  4. Transaktionen und Context Manager
← Zurück zu Python Academy