Real-World Skills

Geschätzte Lektüre: 7 Minuten 99 Ansichten

pgAdmin und DBeaver – Alternative Datenbank-Clients

Bisher haben wir mit phpMyAdmin gearbeitet, einem webbasierten Tool, das eng mit MySQL und MAMP verbunden ist. In der beruflichen Praxis begegnen Ihnen häufig eigenständige Datenbank-Clients, die eine breitere Unterstützung verschiedener Datenbanksysteme bieten.

pgAdmin ist der offizielle Client für PostgreSQL. Wenn Sie mit PostgreSQL arbeiten, bietet pgAdmin eine umfangreiche Oberfläche für die Verwaltung von Datenbanken, das Erstellen von Abfragen und die Performance-Analyse.

DBeaver ist ein universeller Datenbank-Client, der nahezu alle Datenbanksysteme unterstützt (MySQL, PostgreSQL, SQLite, Oracle, MSSQL und viele mehr). DBeaver ist in einer kostenlosen Community Edition erhältlich und bietet Funktionen wie:

  • ER-Diagramm-Viewer
  • CSV/Excel-Import und -Export
  • SQL-Editor mit Autovervollständigung
  • Datenvisualisierung

Installation und erste Schritte mit DBeaver:

  1. Laden Sie DBeaver Community Edition von der offiziellen Website herunter und installieren Sie es.
  2. Starten Sie DBeaver und klicken Sie auf „Neue Datenbankverbindung“.
  3. Wählen Sie MySQL aus der Liste.
  4. Geben Sie die Verbindungsdaten ein: Host localhost, Port 3306, Benutzername root, (Passwort leer, wenn Sie es nicht geändert haben).
  5. Klicken Sie auf „Testverbindung“ und dann auf „Fertigstellen“.
  6. In der linken Spalte sehen Sie nun Ihre Datenbanken. Öffnen Sie bestellsystem oder taskmanager und beginnen Sie mit Abfragen.

Import und Export von Daten

In der Praxis werden Daten häufig über CSV- oder Excel-Dateien ausgetauscht.

Export nach CSV in phpMyAdmin:

  1. Öffnen Sie eine Tabelle (z. B. produkte).
  2. Klicken Sie auf den Reiter Exportieren.
  3. Wählen Sie als Format CSV.
  4. Konfigurieren Sie die Optionen (Spaltentrenner, Zeilenumbruch) und klicken Sie auf Ausführen.

Import aus CSV in phpMyAdmin:

  1. Öffnen Sie die Ziel-Tabelle.
  2. Klicken Sie auf den Reiter Importieren.
  3. Wählen Sie das Format CSV.
  4. Laden Sie Ihre CSV-Datei hoch und passen Sie die Import-Einstellungen an (z. B. ob die erste Zeile Spaltennamen enthält).
  5. Klicken Sie auf Ausführen.

CSV-Import mit SQL (LOAD DATA INFILE):
Für größere Datenmengen ist der SQL-Befehl LOAD DATA INFILE effizienter. Beachten Sie, dass in MAMP der Pfad zur Datei absolute Pfade erfordert.

LOAD DATA INFILE '/path/to/ihre_datei.csv'
INTO TABLE produkte
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS;

SQL und Python – Die Verbindung zur Programmierung

Datenbanken werden selten isoliert betrieben. Meist interagieren Anwendungen (Web-Apps, Analyse-Skripte) mit der Datenbank. Python ist eine der gebräuchlichsten Sprachen für diese Schnittstelle.

Vorbereitung: MySQL-Connector installieren
Öffnen Sie Ihr Terminal (oder die integrierte Konsole in Visual Studio Code) und führen Sie aus:

pip install mysql-connector-python

Beispiel: Verbindung zur Datenbank und Abfrage aus Python

Erstellen Sie in Visual Studio Code eine neue Datei db_verbindung.py und fügen Sie folgenden Code ein:

import mysql.connector
from mysql.connector import Error

# Verbindung herstellen
try:
    verbindung = mysql.connector.connect(
        host='localhost',
        user='root',
        password='',  # In MAMP standardmäßig leer
        database='bestellsystem'
    )
    
    if verbindung.is_connected():
        print("Erfolgreich mit der Datenbank verbunden.")
        
        # Cursor erstellen und Abfrage ausführen
        cursor = verbindung.cursor()
        cursor.execute("SELECT name, preis FROM produkte WHERE preis > 50")
        
        # Ergebnisse abrufen
        ergebnisse = cursor.fetchall()
        
        for produkt in ergebnisse:
            print(f"Produkt: {produkt[0]}, Preis: {produkt[1]} Euro")
            
        cursor.close()
        
except Error as e:
    print(f"Fehler bei der Datenbankverbindung: {e}")
    
finally:
    if 'verbindung' in locals() and verbindung.is_connected():
        verbindung.close()
        print("Verbindung geschlossen.")

Beispiel: Daten einfügen mit Parametern (SQL-Injection-sicher)

import mysql.connector

def neuen_kunden_einfuegen(vorname, nachname, email):
    verbindung = mysql.connector.connect(
        host='localhost',
        user='root',
        password='',
        database='bestellsystem'
    )
    
    cursor = verbindung.cursor()
    
    # Parameterisierte Abfrage – sichert gegen SQL-Injection
    sql = "INSERT INTO kunden (vorname, nachname, email, registrierungsdatum) VALUES (%s, %s, %s, CURDATE())"
    werte = (vorname, nachname, email)
    
    cursor.execute(sql, werte)
    verbindung.commit()
    
    print(f"Kunde eingefügt mit ID: {cursor.lastrowid}")
    
    cursor.close()
    verbindung.close()

# Funktion aufrufen
neuen_kunden_einfuegen("Maria", "Lehmann", "maria.lehmann@email.de")

Beispiel: Daten in einen Pandas-DataFrame laden (für Analyse)

import mysql.connector
import pandas as pd

verbindung = mysql.connector.connect(
    host='localhost',
    user='root',
    password='',
    database='bestellsystem'
)

# SQL-Abfrage direkt in DataFrame laden
df = pd.read_sql("SELECT * FROM kunden_umsatz", verbindung)

print(df.head())
print(f"\nDurchschnittlicher Umsatz: {df['gesamtumsatz'].mean():.2f} Euro")

verbindung.close()

Diese Beispiele zeigen, wie SQL-Abfragen in Python eingebettet werden können – eine Kernkompetenz für Datenanalyse, Backend-Entwicklung und Automatisierung.


Dieses Dokument teilen

Real-World Skills

Oder Link kopieren

INHALT

Abonnieren

×
Cancel