PyMySQL使用与安装指南

需积分: 9 3 下载量 3 浏览量 更新于2024-07-19 收藏 115KB PDF 举报
"Python连接MySQL的库PyMySQL的文档,包括安装、示例和API参考" PyMySQL是Python中用于连接MySQL数据库的一个库,它提供了与MySQL服务器交互的接口。这个库支持多种Python版本,包括CPython(从2.6或3.3版本开始)、PyPy(从4.0版本开始)以及IronPython 2.7。同时,PyMySQL适用于MySQL 4.1及更高版本(主要测试在5.5~版本),以及MariaDB 5.1及更高版本。 1.1 安装 安装PyMySQL非常简单,你可以通过Python的包管理器pip来完成。在命令行输入以下命令: ```bash pip install PyMySQL ``` 在安装过程中,确保你的Python环境已经配置好,并且系统中已经安装了MySQL服务器。 1.1.1 要求 要使用PyMySQL,你需要满足以下条件: - Python:至少是CPython 2.6或3.3,或者PyPy 4.0,或者IronPython 2.7。 - MySQL Server:至少是MySQL 4.1,或者MariaDB 5.1。 1.2 示例 - CRUD操作 PyMySQL可以方便地进行创建(Create)、读取(Read)、更新(Update)和删除(Delete)等数据库操作。以下是一个简单的示例,展示了如何操作一个名为`users`的表: 首先,创建`users`表的SQL语句: ```sql CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `email` varchar(255) COLLATE utf8_bin NOT NULL, `password` varchar(255) COLLATE utf8_bin NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1; ``` 接下来,使用Python和PyMySQL进行CRUD操作: ```python import pymysql # 创建连接 conn = pymysql.connect(host='localhost', user='username', password='password', db='database') # 创建游标 cursor = conn.cursor() # 插入数据 email = 'example@example.com' password = 'password123' insert_query = "INSERT INTO users (email, password) VALUES (%s, %s)" cursor.execute(insert_query, (email, password)) # 读取数据 select_query = "SELECT * FROM users WHERE email=%s" cursor.execute(select_query, (email,)) result = cursor.fetchone() print(result) # 更新数据 update_query = "UPDATE users SET password=%s WHERE email=%s" new_password = 'new_password456' cursor.execute(update_query, (new_password, email)) # 删除数据 delete_query = "DELETE FROM users WHERE id=%s" id_to_delete = result[0] # 假设id是结果中的第一个元素 cursor.execute(delete_query, (id_to_delete,)) # 提交事务 conn.commit() # 关闭游标和连接 cursor.close() conn.close() ``` 2. API参考 PyMySQL的API主要包括`pymysql.connections`模块,它提供了与MySQL服务器建立连接的方法,以及`pymysql.cursors`模块,定义了不同的游标类型,如`Cursor`、`DictCursor`等,用于执行SQL查询和处理结果。 `pymysql.connections`模块包含的主要类有`Connection`,用于建立到MySQL服务器的连接,以及相关的方法,如`connect()`、`commit()`、`rollback()`等。 `pymysql.cursors`模块则提供游标类,例如`Cursor`用于返回标准的元组结果集,而`DictCursor`则将结果集转换为字典形式,便于按列名访问数据。 PyMySQL是一个功能丰富的库,它允许Python开发者轻松地与MySQL数据库进行交互,进行各种数据库操作。通过阅读完整的文档,开发者可以了解更多关于连接管理、错误处理、事务控制以及高级用法的细节。