Python und MySQL: Praktischer Leitfaden zu Datenbankverbindung, Erstellung und CRUD-Operationen
Python und MySQL: Praktischer Leitfaden zu Datenbankverbindung, Erstellung und CRUD-Operationen
In der heutigen datengetriebenen Welt müssen Python-Entwickler oft mit relationalen Datenbanken interagieren. MySQL, ein Open-Source-RDBMS, bleibt aufgrund seiner Robustheit, Community-Unterstützung und Benutzerfreundlichkeit eine beliebte Wahl. Dieser Leitfaden führt Sie durch jeden Schritt – von der Installation von MySQL und seinem Python-Connector bis hin zur Erstellung von Datenbanken, Tabellen und der Durchführung grundlegender CRUD-Operationen – alles mit Betonung auf Best Practices und sauberem Code.
Was ist MySQL?
MySQL ist ein führendes Open-Source-Relational-Database-Management-System (RDBMS). Mitbegründer Michael Widenius, dessen Tochter den Namen inspirierte, baute MySQL 1995. Seine SQL-basierte Schnittstelle, starke Performance und plattformübergreifende Unterstützung machen es zur ersten Wahl für Webanwendungen, Datenanalysen und mehr.
MySQL auf Linux/Unix installieren
Laden Sie das offizielle RPM-Paket von MySQL Downloads herunter. Öffnen Sie ein Terminal und führen Sie aus:
rpm -i
Zum Beispiel:
rpm -i MySQL-5.0.9.0.i386.rpm
Installation verifizieren:
mysql --version
MySQL auf Windows installieren
Laden Sie den Windows-Installer von derselben MySQL-Website herunter und folgen Sie dem Assistenten. Für eine Schritt-für-Schritt-Visuelle Anleitung siehe dieses offizielle Tutorial.
MySQL Connector für Python installieren
Verwenden Sie pip, um die Connector-Bibliothek zu installieren. Der Befehl variiert leicht zwischen Python 2 und 3:
pip install mysql-connector
pip3 install mysql-connector
MySQL-Verbindung testen
Sobald der Connector installiert ist, testen Sie die Konnektivität, indem Sie ein einfaches Verbindungsobjekt erstellen. Ersetzen Sie hostname, username und password mit Ihren Anmeldedaten.
import mysql.connector
conn = mysql.connector.connect(
host="hostname",
user="username",
passwd="password"
)
print(conn)
Erfolgreiche Ausgabe wird ähnlich aussehen:
<mysql.connector.connection.MySQLConnection object at 0x000002338A4C6B00>
Datenbank über Python erstellen
Führen Sie ein CREATE DATABASE-Statement über ein Cursor-Objekt aus:
import mysql.connector
conn = mysql.connector.connect(
host="localhost",
user="root",
passwd="root"
)
cursor = conn.cursor()
cursor.execute("CREATE DATABASE meine_erste_db")
cursor.execute("SHOW DATABASES")
for db in cursor:
print(db)
Ausgabe:
("meine_erste_db",)
Tabellen erstellen
Einfache Tabelle
Eine student-Tabelle mit zwei Spalten erstellen:
cursor.execute("CREATE TABLE student (id INT, name VARCHAR(255))")
cursor.execute("SHOW TABLES")
for tbl in cursor:
print(tbl)
Ausgabe:
("student",)
Tabelle mit Primary Key
Eine employee-Tabelle definieren, die einen auto-inkrementierenden Primary Key enthält:
cursor.execute("CREATE TABLE employee (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), salary INT(6))")
cursor.execute("SHOW TABLES")
for tbl in cursor:
print(tbl)
Ausgabe:
("employee",)
("student",)
Tabelle ändern
Eine existierende Spalte zu einem Primary Key ändern:
cursor.execute("ALTER TABLE student MODIFY id INT PRIMARY KEY")
Verifikation kann durch Beschreiben der Tabelle oder manuelles Inspektion des Schemas erfolgen.
Daten einfügen
Zeilen in beide Tabellen einfügen:
student_sql = "INSERT INTO student(id, name) VALUES (1, 'John')" employee_sql = "INSERT INTO employee(id, name, salary) VALUES (1, 'John', 10000)" cursor.execute(student_sql) cursor.execute(employee_sql) conn.commit() print(cursor.rowcount, "Datensatz eingefügt")
Ausgabe:
2 Datensatz eingefügt
Nächste Schritte
Von hier aus können Sie Updates, Deletes und fortgeschrittene Abfragen erkunden. Denken Sie immer daran, Ihre Verbindung zu schließen, wenn Sie fertig sind:
conn.close()
Viel Spaß beim Coden!
Python
- Pythons strip()-Methode meistern: Umfassender Leitfaden & Praxisbeispiele
- Pythons str.count(): Zeichen & Teilstrings zählen mit Beispielen
- Python format()-Strings meistern mit klaren Beispielen
- Pythons String.find()-Methode meistern: Syntax, Beispiele & Alternativen
- Python Lambda-Funktionen meistern: Praxisbeispiele & Best Practices
- Python round()-Funktion erklärt mit praktischen Beispielen
- Pythons map()-Funktion meistern: Syntax, Beispiele und Best Practices
- Python timeit(): Ausführungszeit messen mit praktischen Beispielen
- Python Counter in collections: Effizientes Zählen, Aktualisieren und arithmetische Operationen
- type() und isinstance() in Python verstehen: Praktische Beispiele