Heim >Backend-Entwicklung >Python-Tutorial >Python-Serverprogrammierung: Interaktion mit MySQL-Datenbanken mithilfe von PyMySQL

Python-Serverprogrammierung: Interaktion mit MySQL-Datenbanken mithilfe von PyMySQL

PHPz
PHPzOriginal
2023-06-18 14:31:541249Durchsuche

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的表,并定义了四个列:idnameemailpassword。其中,id是主键,使用INT数据类型,nameemail是使用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

Darüber hinaus geben wir auch den Namen der Datenbank an, zu der eine Verbindung hergestellt werden soll, der über den Parameter 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 usersein, 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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn