引言
Python是一门广泛应用于数据处理和开发领域的高级编程语言。而MySQL作为一种常用的关系型数据库管理系统,在Python开发中扮演着重要的角色。pymysql模块是Python中连接和操作MySQL数据库的一个强大工具。
安装pymysql模块
首先,我们需要确保已经在Python环境中安装了pymysql模块。可以通过以下命令进行安装:
连接MySQL数据库
在使用pymysql之前,我们需要建立与MySQL数据库的连接。可以通过以下代码来创建连接对象并连接到数据库:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| import pymysql
conn = pymysql.connect( host='localhost', port=3306, user='root', password='password', db='mydatabase' )
cur = conn.cursor()
cur.execute("SELECT * FROM users")
data = cur.fetchall() for row in data: print(row)
cur.close() conn.close()
|
执行SQL语句
使用pymysql执行SQL语句非常简单。可以通过以下代码来执行SELECT、INSERT、UPDATE和DELETE语句:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| import pymysql
conn = pymysql.connect(host='localhost', user='root', password='password', db='mydatabase') cur = conn.cursor()
cur.execute("SELECT * FROM users") data = cur.fetchall() print(data)
cur.execute("INSERT INTO users (name, age) VALUES ('Alice', 25)") conn.commit()
cur.execute("UPDATE users SET age = 26 WHERE name = 'Alice'") conn.commit()
cur.execute("DELETE FROM users WHERE name = 'Alice'") conn.commit()
cur.close() conn.close()
|
使用参数化查询
为了提高安全性和性能,在执行SQL查询时,我们推荐使用参数化查询。可以通过以下代码来实现参数化查询:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| import pymysql
conn = pymysql.connect(host='localhost', user='root', password='password', db='mydatabase') cur = conn.cursor()
name = 'Alice' age = 25 cur.execute("SELECT * FROM users WHERE name = %s AND age = %s", (name, age)) data = cur.fetchall() print(data)
cur.close() conn.close()
|
异常处理
在数据库操作过程中,异常处理非常重要。我们可以使用try-except语句来捕获并处理可能发生的异常:
1 2 3 4 5 6 7 8 9 10 11 12 13
| import pymysql
conn = pymysql.connect(host='localhost', user='root', password='password', db='mydatabase') cur = conn.cursor()
try: cur.execute("INSERT INTO nonexistent_table (name) VALUES ('Alice')") conn.commit() except pymysql.Error as e: print(f"Error: {e}")
cur.close() conn.close()
|