- 1 1. Integration von Python und MySQL: Einführung
- 2 2. Erforderliche Umgebungseinrichtung für die Integration von Python und MySQL
- 3 3. Grundlegende Schritte zum Verbinden mit MySQL mittels Python
- 4 4. Grundlegende SQL‑Operationen
- 5 5. Erweiterte Operationen
- 6 6. Praktische Beispiele für die Verwendung von Python und MySQL
- 7 7. Summary and Next Steps
1. Integration von Python und MySQL: Einführung
Python ist eine äußerst flexible Programmiersprache, die mit einer Vielzahl von Datenbankmanagementsystemen (DBMS) arbeiten kann. MySQL wird insbesondere häufig als Open‑Source‑relationale Datenbank eingesetzt, und in Kombination mit Python ermöglicht es leistungsstarke Datenmanipulation.
In diesem Artikel erklären wir, wie man mit Python eine Verbindung zu MySQL herstellt und grundlegende Datenbankoperationen wie Einfügen, Abrufen, Aktualisieren und Löschen von Daten durchführt.
2. Erforderliche Umgebungseinrichtung für die Integration von Python und MySQL
Zunächst müssen Sie die Umgebung vorbereiten, um Python und MySQL zu integrieren. Dieser Abschnitt erklärt, wie die erforderliche Software installiert und konfiguriert wird.
2.1 Installation von MySQL
Der Installationsvorgang für MySQL unterscheidet sich je nach Betriebssystem. Im Folgenden finden Sie einfache Installationsmethoden für jedes OS.
- Für Windows : Laden Sie den Installer von der offiziellen MySQL‑Website herunter und folgen Sie der Installationsanleitung.
- Für macOS : Sie können MySQL mit Homebrew über den Befehl
brew install mysqlinstallieren. - Für Linux : Auf Debian‑basierten Betriebssystemen verwenden Sie
sudo apt-get install mysql-server.
2.2 Einrichtung der Python‑Umgebung
Als Nächstes installieren Sie die in der Python‑Umgebung benötigten Bibliotheken. Um von Python aus eine Verbindung zu MySQL herzustellen, benötigen Sie eine der folgenden Bibliotheken.
- mysql-connector-python : Eine offizielle MySQL‑Connector‑Bibliothek, bereitgestellt von Oracle.
- PyMySQL : Eine reine Python‑Bibliothek, die mit MySQLdb kompatibel ist.
Die Installation ist einfach – führen Sie einfach den folgenden Befehl aus.
pip install mysql-connector-python
Alternativ, wenn Sie PyMySQL verwenden möchten, führen Sie den folgenden Befehl aus.
pip install pymysql
2.3 Unterschiede zwischen den Bibliotheken
mysql-connector-python ist die offizielle MySQL‑Bibliothek und bietet hohe Leistung sowie umfassenden Support. PyMySQL hingegen ist leichtgewichtig und eignet sich, wenn MySQLdb‑kompatible Funktionen benötigt werden. Sie sollten die Bibliothek basierend auf den Anforderungen Ihres Projekts auswählen.
3. Grundlegende Schritte zum Verbinden mit MySQL mittels Python
Die Verbindung zu MySQL mit Python ist sehr einfach. In diesem Abschnitt erklären wir, wie man sich mit MySQL verbindet und Tabellen innerhalb der Datenbank bedient.
3.1 Verbindung zu einer MySQL‑Datenbank
Unten finden Sie ein einfaches Beispiel, das eine Verbindung zu MySQL mit mysql-connector-python herstellt.
import mysql.connector
# Connection information for the MySQL server
conn = mysql.connector.connect(
host='localhost',
user='root',
password='password',
database='test_db'
)
# Verify the connection
if conn.is_connected():
print("Successfully connected to the MySQL server!")
In diesem Code wird die Funktion mysql.connector.connect() verwendet, um eine Verbindung zu einem lokalen MySQL‑Server herzustellen. Bei erfolgreicher Verbindung wird eine Bestätigungsnachricht angezeigt.
3.2 Fehlersuche bei Verbindungsproblemen
Wenn die Verbindung fehlschlägt, können die folgenden Fehlertypen auftreten.
- Authentifizierungsfehler : Benutzername oder Passwort sind möglicherweise falsch.
- Host‑Verbindungsfehler : Prüfen Sie, ob der Server korrekt läuft, und überprüfen Sie Ihre Firewall‑Einstellungen.
Um zu verhindern, dass das Programm unerwartet beendet wird, können Sie Fehler mit einer try-except‑Anweisung behandeln.
try:
conn = mysql.connector.connect(...)
except mysql.connector.Error as err:
print(f"Error: {err}")
4. Grundlegende SQL‑Operationen
Sobald Sie erfolgreich mit MySQL verbunden sind, können Sie grundlegende SQL‑Operationen ausführen. Dieser Abschnitt erklärt, wie man Daten einfügt, abruft, aktualisiert und löscht.
4.1 Daten einfügen
Um neue Daten in eine Tabelle einzufügen, verwenden Sie ein SQL‑Statement wie das folgende.
cursor = conn.cursor()
# Insert data query
insert_query = "INSERT INTO users (username, email) VALUES (%s, %s)"
data = ("user1", "user1@example.com")
# Execute the query
cursor.execute(insert_query, data)
# Commit the changes
conn.commit()
4.2 Daten abrufen
Um Daten abzurufen, verwenden Sie die SELECT-Anweisung. Das untenstehende Beispiel ruft alle Benutzerdatensätze ab.
cursor.execute("SELECT * FROM users")
rows = cursor.fetchall()
# Display the results
for row in rows:
print(row)
4.3 Daten aktualisieren
Um vorhandene Daten zu aktualisieren, verwenden Sie die UPDATE-Anweisung.
update_query = "UPDATE users SET email = %s WHERE username = %s"
cursor.execute(update_query, ("new_email@example.com", "user1"))
conn.commit()
4.4 Daten löschen
Um unnötige Daten zu entfernen, verwenden Sie die DELETE-Anweisung.
delete_query = "DELETE FROM users WHERE username = %s"
cursor.execute(delete_query, ("user1",))
conn.commit()

5. Erweiterte Operationen
Als Nächstes erklären wir weiterführende Operationen wie Transaktionsverwaltung und vorbereitete Anweisungen.
5.1 Transaktionen verwalten
Wenn Sie mehrere Datenbankoperationen als eine Einheit ausführen und bei Bedarf zurückrollen möchten, verwenden Sie Transaktionen.
try:
cursor.execute("...")
conn.commit() # Commit if completed successfully
except:
conn.rollback() # Roll back if an error occurs
5.2 Vorbereitete Anweisungen verwenden
Um SQL-Injection-Angriffe zu verhindern, wird empfohlen, vorbereitete Anweisungen zu verwenden.
stmt = "SELECT * FROM users WHERE username = %s"
cursor.execute(stmt, ("user1",))
6. Praktische Beispiele für die Verwendung von Python und MySQL
Durch die Kombination von Python und MySQL können Sie ein breites Spektrum praktischer Anwendungen entwickeln. In diesem Abschnitt erklären wir, wie man Python und MySQL mit konkreten Beispielen verwendet.
6.1 Aufbau eines Benutzermanagementsystems
Ein Benutzermanagementsystem ist ein typisches Beispiel für eine mit Python und MySQL erstellte Anwendung. Nachfolgend finden Sie ein grundlegendes Design für ein einfaches Benutzermanagementsystem.
Schritt 1: Erstellen der Benutzertabelle
Zuerst erstellen Sie eine Tabelle, um Benutzerdaten zu speichern, mit der SQL-Anweisung CREATE TABLE.
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL,
email VARCHAR(100) NOT NULL,
password VARCHAR(255) NOT NULL
);
Schritt 2: Implementierung einer Benutzerregistrierungsfunktion
Als Nächstes implementieren Sie die Funktionalität zur Registrierung neuer Benutzer. Der folgende Python-Code fügt Benutzerdaten mithilfe einer INSERT-Anweisung in die Datenbank ein.
import mysql.connector
# Connect to MySQL
conn = mysql.connector.connect(user='root', password='password', host='localhost', database='test_db')
cursor = conn.cursor()
# Insert new user data
insert_query = "INSERT INTO users (username, email, password) VALUES (%s, %s, %s)"
user_data = ("user123", "user123@example.com", "securepassword")
cursor.execute(insert_query, user_data)
# Commit the changes
conn.commit()
# Close the connection
cursor.close()
conn.close()
Schritt 3: Implementierung einer Anmeldefunktion
Fügen Sie eine Funktion hinzu, die es Benutzern ermöglicht, sich anzumelden. Das untenstehende Beispiel prüft, ob ein Benutzer mit einer SELECT-Anweisung existiert.
# Authentication during login
login_query = "SELECT * FROM users WHERE username = %s AND password = %s"
login_data = ("user123", "securepassword")
cursor.execute(login_query, login_data)
user = cursor.fetchone()
if user:
print("Login successful")
else:
print("Login failed")
6.2 MySQL für Datenanalyse verwenden
Sie können MySQL als Datenrepository nutzen und es mit Python-Datenanalysebibliotheken kombinieren, um Analysen durchzuführen. Hier ein Beispiel mit der Pandas-Bibliothek von Python.
Schritt 1: Daten aus MySQL abrufen
Das folgende Beispiel zeigt, wie man Daten aus MySQL abruft und sie für die Analyse in ein Pandas DataFrame umwandelt.
import mysql.connector
import pandas as pd
# Connect to MySQL
conn = mysql.connector.connect(user='root', password='password', host='localhost', database='test_db')
cursor = conn.cursor()
# Retrieve data and convert to a Pandas DataFrame
query = "SELECT * FROM users"
cursor.execute(query)
rows = cursor.fetchall()
df = pd.DataFrame(rows, columns=['id', 'username', 'email', 'password'])
# Vorschau der Daten
print(df.head())
# Schließe die Verbindung
cursor.close()
conn.close()
Step 2: Data Aggregation and Analysis
You can use Pandas to perform aggregation and analysis. For example, you can analyze the distribution of email domains among users.
# Count users by email domain
df['domain'] = df['email'].apply(lambda x: x.split('@')[1])
domain_count = df['domain'].value_counts()
print(domain_count)
As shown above, by using MySQL as a backend and combining it with analysis tools such as Pandas, you can process data effectively.
7. Summary and Next Steps
So far, we have covered the basics of database operations using Python and MySQL integration, including building a user management system as a practical example and performing data analysis. This technology is extremely powerful for building the foundation of web applications and data processing systems.
7.1 Further Steps
After learning the fundamentals explained in this article, we recommend moving on to the following steps.
- Integrate with Django or Flask : Use Python frameworks to build more advanced web applications.
- Database optimization : Learn about MySQL indexing and query optimization to improve database performance.
- Big data analysis : Process MySQL data with Python and work on building machine learning models or conducting large-scale data analysis.


