Zum Inhalt springen

Vertiefung 9 - Objektorientierte Programmierung und Datenbanken

Schritt 3 von 7

In diesem Schritt werden wir uns mit der Kombination von objektorientierter Programmierung und Datenbanken beschäftigen. Wir werden uns auf die Erstellung von Klassen konzentrieren, die mit Datenbanken interagieren. Ein Beispiel für eine Klasse, die Autos aus einer Datenbank liest und schreibt, könnte wie folgt aussehen:

class AutoDatabase:
def __init__(self, db_name):
self.conn = sqlite3.connect(db_name)
self.cursor = self.conn.cursor()
 
def erstelle_tabelle(self):
self.cursor.execute("""
CREATE TABLE IF NOT EXISTS autos (
id INTEGER PRIMARY KEY,
marke TEXT,
modell TEXT,
jahr INTEGER
)
""")
 
def füge_auto_hinzu(self, auto):
self.cursor.execute("""
INSERT INTO autos (marke, modell, jahr)
VALUES (?, ?, ?)
""", (auto.marke, auto.modell, auto.jahr))
self.conn.commit()
 
def lese_autos(self):
self.cursor.execute("""
SELECT * FROM autos
""")
return self.cursor.fetchall()
 
# Verwendung der Klasse
db = AutoDatabase("meine_datenbank.db")
db.erstelle_tabelle()
 
auto = Auto("Toyota", "Corolla", 2015)
db.füge_auto_hinzu(auto)
 
autos = db.lese_autos()
for auto in autos:
print(auto)

Wie man sieht, können wir durch die Kombination von objektorientierter Programmierung und Datenbanken unsere Anwendungen mit flexiblen und effizienten Datenverwaltungsfähigkeiten ausstatten.