Meilenstein 2: Datenbank-App
Anforderungen
- SQLite-Datei
- CREATE TABLE
- INSERT
- SELECT Liste
- UPDATE oder DELETE
- Menü-Schleife
- Platzhalter
? - kurze Doku
Beispiellösung (Mitglieder)
Lösung anzeigen
import sqlite3
DB = "verein.db"
def db():
return sqlite3.connect(DB)
def setup():
conn = db()
conn.execute(
"""
CREATE TABLE IF NOT EXISTS mitglieder (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
punkte INTEGER DEFAULT 0
)
"""
)
conn.commit()
conn.close()
def add(name):
conn = db()
conn.execute("INSERT INTO mitglieder (name) VALUES (?)", (name,))
conn.commit()
conn.close()
def liste():
conn = db()
for row in conn.execute("SELECT id, name, punkte FROM mitglieder"):
print(row)
conn.close()
def set_punkte(mid, punkte):
conn = db()
conn.execute("UPDATE mitglieder SET punkte = ? WHERE id = ?", (punkte, mid))
conn.commit()
conn.close()
setup()
while True:
print("1 add 2 liste 3 punkte 4 ende")
w = input("> ").strip()
if w == "1":
add(input("Name: ").strip().title())
elif w == "2":
liste()
elif w == "3":
set_punkte(int(input("id: ")), int(input("punkte: ")))
elif w == "4":
break
Band 6 Abschluss
Du kannst jetzt:
- Tupel, Mengen, Comprehensions, Sortieren
- Such- und Sortier-Ideen
- CSV lesen/schreiben
- SQLite-Grundlagen
- Datenprojekte von der Frage bis zum Report
Als Nächstes (Band 7+): Anwendungen, APIs, sauberer Code – wenn du willst.