Heim > Artikel > Backend-Entwicklung > Python-Serverprogrammierung: Interaktion mit MySQL-Datenbanken mithilfe von PyMySQL
Python ist eine beliebte High-Level-Programmiersprache mit umfangreichen Bibliotheken und Frameworks, die zur Entwicklung verschiedener Arten von Anwendungen verwendet werden können. Im Bereich der Serverprogrammierung kann Python nicht nur zur Entwicklung von Webanwendungen, sondern auch zur Interaktion mit verschiedenen Datenbanken eingesetzt werden.
In diesem Artikel wird erläutert, wie Sie Python für die Interaktion mit der MySQL-Datenbank verwenden. Wir werden PyMySQL als Bibliothek für Python verwenden, um mit MySQL zu interagieren.
1. Installieren Sie die PyMySQL-Bibliothek
Bevor Sie die PyMySQL-Bibliothek verwenden, müssen Sie sie zuerst installieren. Öffnen Sie ein Terminal oder eine Eingabeaufforderung und geben Sie den folgenden Befehl zur Installation ein:
pip install PyMySQL
2. Stellen Sie eine Verbindung zur MySQL-Datenbank her.
Um eine Verbindung zur MySQL-Datenbank herzustellen, müssen wir den Hostnamen, die Portnummer, den Benutzernamen und das Passwort des MySQL-Servers kennen .
Wir können mit dem folgenden Python-Code eine Verbindung zur MySQL-Datenbank herstellen:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 关闭数据库连接 db.close()
In diesem Code haben wir zum Herstellen der Verbindung die Funktion connect()
der Bibliothek pymysql
verwendet zur MySQL-Datenbank. Zu den Parametern dieser Funktion gehören Informationen wie Hostname, Portnummer, Benutzername und Passwort. pymysql
库的connect()
函数来连接到MySQL数据库。该函数的参数包括主机名、端口号、用户名和密码等信息。
此外,我们还指定了要连接的数据库的名称,该名称是通过database
参数传递的。在下面的代码中,我们将继续使用此连接。
3.创建表
在与MySQL数据库进行交互之前,我们需要创建一个表。我们可以使用以下Python代码在MySQL数据库中创建一个名为users
的表:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 创建表 cursor = db.cursor() cursor.execute('DROP TABLE IF EXISTS users') sql = '''CREATE TABLE users ( id INT(11) NOT NULL AUTO_INCREMENT, name VARCHAR(20) NOT NULL, email VARCHAR(30) NOT NULL, password VARCHAR(30) NOT NULL, PRIMARY KEY (id))''' cursor.execute(sql) # 关闭数据库连接 db.close()
在此代码中,我们定义了一个名为users
的表,并定义了四个列:id
、name
、email
和password
。其中,id
是主键,使用INT
数据类型,name
和email
是使用VARCHAR
数据类型保存的字符串,password
也是使用VARCHAR
数据类型保存的字符串。表的创建过程使用了MySQL的SQL语句。注意,我们还在users
表中设置了自动增量列,该列将自动递增。
4.插入数据
现在,我们已经创建了users
表,可以开始向该表中插入数据了。我们可以使用以下Python代码将一些数据插入到该表中:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 插入数据 cursor = db.cursor() sql = "INSERT INTO users(name, email, password) VALUES (%s, %s, %s)" values = [('Alice', 'alice@email.com', '123456'), ('Bob', 'bob@email.com', '789012'), ('Charlie', 'charlie@email.com', '345678')] cursor.executemany(sql, values) db.commit() # 关闭数据库连接 db.close()
在此代码中,我们首先使用executemany()
函数将多个数据插入到users
表中。该函数的第一个参数指定要执行的SQL语句,第二个参数是一个包含要插入的数据的元组或列表。注意,我们使用了占位符%s
来表示要插入的实际值。
在调用executemany()
函数后,我们必须调用commit()
方法使数据被保存到数据库中。
5.查询数据
要从users
表中检索数据,我们可以使用以下Python代码:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 查询数据 cursor = db.cursor() sql = "SELECT * FROM users" cursor.execute(sql) results = cursor.fetchall() for row in results: id = row[0] name = row[1] email = row[2] password = row[3] print("{} - {} - {} - {}".format(id, name, email, password)) # 关闭数据库连接 db.close()
在此代码中,我们使用SELECT
语句从users
表中检索所有行。然后,使用fetchall()
方法获取所有检索到的行,并使用循环将每一行作为元组处理。最后,我们根据每一行的列值打印输出结果。
6.更新数据
要更新users
表中的数据,我们可以使用以下Python代码:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 更新数据 cursor = db.cursor() sql = "UPDATE users SET password = %s WHERE name = %s" values = ('abcdef', 'Alice') cursor.execute(sql, values) db.commit() # 关闭数据库连接 db.close()
在此代码中,我们使用UPDATE
语句将名为Alice
的用户的密码更新为abcdef
。该代码使用了带参数的SQL语句,其中%s
是占位符。我们还将要更新的实际值包装在元组中,然后传递给execute()
函数。
7.删除数据
要从users
表中删除数据,我们可以使用以下Python代码:
import pymysql # 打开数据库连接 db = pymysql.connect(host='localhost', port=3306, user='root', password='', database='test') # 删除数据 cursor = db.cursor() sql = "DELETE FROM users WHERE email = %s" value = ('bob@email.com',) cursor.execute(sql, value) db.commit() # 关闭数据库连接 db.close()
在此代码中,我们使用DELETE
语句删除电子邮件为bob@email.com
的用户。
总结
在本文中,我们介绍了如何使用Python与MySQL数据库进行交互,并使用了pymysql
database
übergeben wird. Im folgenden Code werden wir diese Verbindung weiterhin verwenden. 🎜🎜3. Erstellen Sie eine Tabelle🎜🎜Bevor wir mit der MySQL-Datenbank interagieren, müssen wir eine Tabelle erstellen. Mit dem folgenden Python-Code können wir eine Tabelle mit dem Namen users
in einer MySQL-Datenbank erstellen: 🎜rrreee🎜 In diesem Code haben wir eine Tabelle mit dem Namen users
definiert und vier Spalten definiert: id
, name
, email
und password
. Unter diesen ist id
der Primärschlüssel, der den Datentyp INT
verwendet, und name
und email
verwenden VARCHAR Eine im Datentyp „code“ gespeicherte Zeichenfolge. <code>password
ist ebenfalls eine im Datentyp „VARCHAR
“ gespeicherte Zeichenfolge. Der Tabellenerstellungsprozess verwendet MySQL-SQL-Anweisungen. Beachten Sie, dass wir in der Tabelle users
auch eine Spalte mit automatischer Inkrementierung eingerichtet haben, die automatisch inkrementiert wird. 🎜🎜4. Daten einfügen 🎜🎜Da wir nun die Tabelle users
erstellt haben, können wir mit dem Einfügen von Daten in die Tabelle beginnen. Mit dem folgenden Python-Code können wir einige Daten in diese Tabelle einfügen: 🎜rrreee🎜 In diesem Code fügen wir zunächst mehrere Daten in users
ein, indem wir die Funktion executemany()
>Table verwenden. Der erste Parameter dieser Funktion gibt die auszuführende SQL-Anweisung an und der zweite Parameter ist ein Tupel oder eine Liste mit den einzufügenden Daten. Beachten Sie, dass wir den Platzhalter %s
verwenden, um den tatsächlich einzufügenden Wert darzustellen. 🎜🎜Nach dem Aufruf der Funktion executemany()
müssen wir die Methode commit()
aufrufen, um die Daten in der Datenbank zu speichern. 🎜🎜5. Daten abfragen🎜🎜Um Daten aus der users
-Tabelle abzurufen, können wir den folgenden Python-Code verwenden: 🎜rrreee🎜In diesem Code verwenden wir die SELECT
-Anweisung from Alle Zeilen aus der Tabelle users
abrufen. Verwenden Sie dann die Methode fetchall()
, um alle abgerufenen Zeilen abzurufen, und verwenden Sie eine Schleife, um jede Zeile als Tupel zu verarbeiten. Abschließend drucken wir die Ausgabe basierend auf den Spaltenwerten jeder Zeile. 🎜🎜6. Daten aktualisieren🎜🎜Um die Daten in der users
-Tabelle zu aktualisieren, können wir den folgenden Python-Code verwenden: 🎜rrreee🎜In diesem Code verwenden wir den UPDATE
Anweisung an Das Passwort des Benutzers namens Alice
wird auf abcdef
aktualisiert. Dieser Code verwendet eine SQL-Anweisung mit Parametern, wobei %s
ein Platzhalter ist. Wir verpacken auch den tatsächlichen Wert, der aktualisiert werden soll, in ein Tupel und übergeben ihn an die Funktion execute()
. 🎜🎜7. Daten löschen🎜🎜Um Daten aus der users
-Tabelle zu löschen, können wir den folgenden Python-Code verwenden: 🎜rrreee🎜In diesem Code löschen wir Benutzer mit der DELETE
-Anweisung mit der E-Mail-Adresse bob@email.com
. 🎜🎜Zusammenfassung🎜🎜In diesem Artikel haben wir die Verwendung von Python für die Interaktion mit der MySQL-Datenbank vorgestellt und die pymysql
-Bibliothek als Brücke zwischen Python und MySQL verwendet. Wir haben gelernt, wie man eine Verbindung zu einer MySQL-Datenbank herstellt, Tabellen erstellt, Daten einfügt, Daten aktualisiert und löscht. Dies sind häufige Aufgaben, die bei der Entwicklung von Webanwendungen häufig anfallen. Wenn Sie diese Fähigkeiten beherrschen, können Sie mit Python leistungsstarke Serveranwendungen erstellen und mit einer Vielzahl von Datenbanken interagieren. 🎜Das obige ist der detaillierte Inhalt vonPython-Serverprogrammierung: Interaktion mit MySQL-Datenbanken mithilfe von PyMySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!