Python连接MySQL数据库:PyMySQL库安装与核心用法详解
本文详细介绍如何在Python 3.x环境中使用PyMySQL库连接MySQL数据库。内容涵盖库的安装方法、基本连接与查询流程、事务提交与回滚操作,以及通过参数化查询防止SQL注入的安全实践。适用于Django等框架及独立脚本开发,提供完整的代码示例与注意事项。
PyMySQL库概述
PyMySQL介绍
PyMySQL是专为Python 3.x版本设计的MySQL数据库连接库,而在早期的Python 2环境中,通常使用的是mysqldb库。
此外,在Django框架开发中,也可以配置使用PyMySQL来连接MySQL数据库。
环境安装
PyMySQL安装
安装命令示例
#终端中安装pymysql
pip install pymysql
正文开始
核心功能使用
PyMySQL的使用
安装步骤
1.安装
sudo pip3 install pymysql
基本连接与操作
2.基本使用
代码实现示例
from pymysql import connect
# 1.创建链接
coon = connect()
"""
* 参数host:连接的mysql主机,如果本机是'localhost'
* 参数port:连接的mysql主机的端口,默认是3306
* 参数user:连接的用户名
* 参数password:连接的密码
* 参数database:数据库的名称
* 参数charset:通信采用的编码方式,推荐使用utf8
"""
# 2.创建游标
cur = conn.cursor()
sql = 'select * from table_name;'
count = cursor.execute(sql) # count为sql语句影响数据的行数
# 3.取出数据
content = cur.fetchall() # fetchone()取出一行数据
# 4.关闭游标
cur.close()
# 5.关闭连接
conn.close()
事务处理机制
3.其他方法
- conn.commit()提交
- conn.rollback()回滚
配合try方法使用
安全与防注入
4.防注入
防注入原理
为防止用户提交恶意数据导致SQL语句语义被篡改进而引发数据泄露,需采取防护措施。
参数化查询实现
参数化查询:在SQL语句中使用%s作为占位符,将具体参数存入列表,并将该列表作为第二个参数传递给execute方法。
防注入代码示例
par = ['name', 'age']
cursor.execute('select %s,%s from table_name;', par)
总结
总结
以上介绍了Python中使用MySQL及PyMySQL的基本使用方法,希望能为读者提供帮助。如有任何疑问,欢迎留言,小编会及时回复。感谢大家对本站的支持! 如果您觉得本文对您有帮助,欢迎转载,请注明出处,谢谢!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













