0Pricing
Python Academy · Lektion

Insert, Select, Update, Delete

CRUD-Operationen ausführen

Insert, Select, Update, Delete ist eine kostenlose Python Academy-Lektion auf CoddyKit. Dies ist Lektion 2 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.

CRUD-Operationen

Die vier grundlegenden Datenbankaktionen sind Create, Read, Update, Delete (CRUD). In SQL entsprechen sie INSERT, SELECT, UPDATE und DELETE.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)')
print('Ready for CRUD')
conn.close()

Eine Zeile einfügen

Verwenden Sie INSERT INTO, um eine Zeile hinzuzufügen. Listen Sie zuerst die Spalten und anschließend die zugehörigen Werte auf.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)')
cur.execute("INSERT INTO users (name, age) VALUES ('Alice', 30)")
print('Inserted Alice')
conn.close()

Alle Zeilen auslesen

SELECT * liest jede Spalte aus. Verwenden Sie fetchall(), um eine Liste aller Zeilen als Tupel zu erhalten.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)')
cur.execute("INSERT INTO users (name, age) VALUES ('Alice', 30)")
cur.execute("INSERT INTO users (name, age) VALUES ('Bob', 25)")
cur.execute('SELECT * FROM users')
print(cur.fetchall())
conn.close()

Eine Zeile abrufen

fetchone() gibt eine einzelne Zeile zurück oder None, wenn keine weiteren Zeilen vorhanden sind. Das ist praktisch, wenn Sie genau ein Ergebnis erwarten.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)')
cur.execute("INSERT INTO users (name) VALUES ('Alice')")
cur.execute('SELECT * FROM users')
print(cur.fetchone())
conn.close()

Bestimmte Spalten auswählen

Statt * geben Sie die gewünschten Spalten an. Das ist schneller und übersichtlicher.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)')
cur.execute("INSERT INTO users (name, age) VALUES ('Alice', 30)")
cur.execute('SELECT name FROM users')
print(cur.fetchall())
conn.close()

Mit WHERE filtern

Die WHERE-Klausel beschränkt, welche Zeilen betroffen sind oder zurückgegeben werden.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)')
cur.execute("INSERT INTO users (name, age) VALUES ('Alice', 30)")
cur.execute("INSERT INTO users (name, age) VALUES ('Bob', 25)")
cur.execute('SELECT name FROM users WHERE age > 28')
print(cur.fetchall())
conn.close()

Zeilen aktualisieren

UPDATE ändert vorhandene Daten. Fügen Sie immer eine WHERE-Klausel hinzu, sonst werden alle Zeilen aktualisiert.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)')
cur.execute("INSERT INTO users (name, age) VALUES ('Alice', 30)")
cur.execute("UPDATE users SET age = 31 WHERE name = 'Alice'")
cur.execute('SELECT age FROM users')
print(cur.fetchone())
conn.close()

Zeilen löschen

DELETE FROM entfernt Zeilen. Wie bei UPDATE benötigen Sie eine WHERE-Klausel, um bestimmte Zeilen auszuwählen.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)')
cur.execute("INSERT INTO users (name) VALUES ('Alice')")
cur.execute("INSERT INTO users (name) VALUES ('Bob')")
cur.execute("DELETE FROM users WHERE name = 'Bob'")
cur.execute('SELECT * FROM users')
print(cur.fetchall())
conn.close()

Betroffene Zeilen zählen

Nach UPDATE oder DELETE gibt cursor.rowcount an, wie viele Zeilen geändert wurden.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)')
cur.execute("INSERT INTO users (name) VALUES ('Alice')")
cur.execute("INSERT INTO users (name) VALUES ('Bob')")
cur.execute('DELETE FROM users')
print('Deleted rows:', cur.rowcount)
conn.close()

The lastrowid

Nach einem INSERT liefert cursor.lastrowid den automatisch erzeugten Primärschlüssel der neuen Zeile.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)')
cur.execute("INSERT INTO users (name) VALUES ('Alice')")
print('New id:', cur.lastrowid)
conn.close()

Ergebnisse sortieren

Fügen Sie ORDER BY hinzu, um zu sortieren. Verwenden Sie ASC für aufsteigende (Standardeinstellung) oder DESC für absteigende Reihenfolge.

import sqlite3
conn = sqlite3.connect(':memory:')
cur = conn.cursor()
cur.execute('CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)')
cur.execute("INSERT INTO users (name, age) VALUES ('Alice', 30)")
cur.execute("INSERT INTO users (name, age) VALUES ('Bob', 25)")
cur.execute('SELECT name FROM users ORDER BY age DESC')
print(cur.fetchall())
conn.close()

Kurze Überprüfung

Testen Sie Ihr CRUD-Wissen.

Zusammenfassung

Sie haben vollständige CRUD-Operationen mit SQLite geübt.

  • INSERT INTO fügt Zeilen hinzu; lastrowid liefert die neue ID
  • SELECT liest Daten mit fetchone() oder fetchall() aus
  • UPDATE und DELETE ändern Zeilen, immer zusammen mit WHERE
  • ORDER BY sortiert die Ergebnisse

Häufig gestellte Fragen

Ist die Lektion „Insert, Select, Update, Delete“ kostenlos?

Ja — der vollständige Text von „Insert, Select, Update, Delete“ 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 „Insert, Select, Update, Delete“?

CRUD-Operationen ausführen 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 2 von 4.

Wie lange dauert die Lektion „Insert, Select, Update, Delete“?

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