SQL in Python: SQLAlchemy Installation, Grundlagen & ORM Tutorial

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

Grundlagen der Arbeit mit SQL in Python: Installation und Nutzung von SQLAlchemy

Die Arbeit mit Datenbanken ist ein unverzichtbarer Bestandteil der modernen Softwareentwicklung. Ob Sie eine Webanwendung entwickeln, Skripte zur Datenanalyse erstellen oder Backend-Dienste aufbauen – die Fähigkeit, Daten mit SQL zu verwalten, bleibt entscheidend.

In diesem Artikel zeigen wir Ihnen ausführlich, wie Sie SQL in Python mit der leistungsstarken Bibliothek SQLAlchemy nutzen. Sie erfahren, wie Sie die Bibliothek installieren, Verbindungen zu verschiedenen Datenbanken einrichten und grundlegende Datenoperationen durchführen.

Was ist SQLAlchemy?

SQLAlchemy ist eine der beliebtesten und funktionsreichsten Python-Bibliotheken für die Arbeit mit relationalen Datenbanken. Sie bietet eine einfache und flexible Möglichkeit, mit verschiedenen Datenbankmanagementsystemen über Python-Code zu interagieren.

SQLAlchemy unterstützt folgende Datenbanksysteme:

  • MySQL
  • PostgreSQL
  • SQLite
  • Oracle
  • Microsoft SQL Server

Wichtige Funktionen von SQLAlchemy

SQLAlchemy bietet Entwicklern eine breite Palette an Möglichkeiten:

  • Direkte Unterstützung von SQL-Abfragen für maximale Flexibilität
  • ORM (Object-Relational Mapping) für die Arbeit mit Datenbanken über Python-Klassen
  • Einheitliche API für verschiedene Datenbankmanagementsysteme
  • Hohe Leistung und benutzerfreundlicher Code
  • Automatische Verwaltung von Datenbankverbindungen
  • Integrierter Schutz vor SQL-Injection
  • Unterstützung von Transaktionen und Verbindungspools

SQLAlchemy in Python installieren

Basisinstallation

Die Installation von SQLAlchemy ist denkbar einfach und erfolgt über den Paketmanager pip:

pip install SQLAlchemy

Installation in Jupyter Notebook

Für die Arbeit in Jupyter Notebook verwenden Sie folgenden Befehl:

!pip install SQLAlchemy

Installation zusätzlicher Treiber

Für verschiedene Datenbanksysteme werden zusätzliche Treiber benötigt:

pip install pymysql      # für MySQL
pip install psycopg2     # für PostgreSQL  
pip install cx_Oracle    # für Oracle
pip install pyodbc       # für SQL Server

Installation überprüfen

Nach der Installation können Sie die Version von SQLAlchemy überprüfen:

import sqlalchemy
print(sqlalchemy.__version__)

Schnellstart mit SQLAlchemy

Notwendige Module importieren

Um mit SQLAlchemy zu arbeiten, müssen Sie zunächst die wichtigsten Module importieren:

from sqlalchemy import create_engine, Column, Integer, String, DateTime
from sqlalchemy.orm import declarative_base, sessionmaker
from datetime import datetime

Datenbankverbindung einrichten

Zur Demonstration verwenden wir SQLite – eine in Python integrierte, leichtgewichtige Datenbank:

engine = create_engine('sqlite:///example.db', echo=True)

Der Parameter echo=True zeigt alle SQL-Abfragen an, die SQLAlchemy ausführt. Dies ist hilfreich für das Debugging und das Verständnis der ORM-Funktionsweise.

Modelle mit ORM erstellen

Das Erstellen von Datenmodellen ist die Grundlage der Arbeit mit dem SQLAlchemy-ORM:

Base = declarative_base()

class User(Base):
    __tablename__ = 'users'
    
    id = Column(Integer, primary_key=True)
    name = Column(String, nullable=False)
    age = Column(Integer)
    created_at = Column(DateTime, default=datetime.utcnow)
    
    def __repr__(self):
        return f"<User(name='{self.name}', age={self.age})>"

Erstellen der Datenbanktabelle

Nach der Definition des Modells können Sie die Tabelle in der Datenbank erstellen:

Base.metadata.create_all(engine)

Blogs

Buchempfehlungen