首页 > Python资料 博客日记
Python中pymysql模块详解:安装、连接、执行SQL语句等常见操作
2024-08-10 20:00:04Python资料围观95次
前言
在Python中,我们经常需要连接和操作数据库。pymysql是一个流行的Python模块,专门用于与MySQL数据库进行交互。本文将介绍pymysql模块的基本使用方法,以及它在实际开发中的一些应用场景。
一、pymysql 模块介绍
pymysql是一个用于Python编程的第三方模块,用于连接和操作MySQL数据库。它提供了一个简单而强大的接口,使开发者能够轻松地在Python程序中执行各种数据库操作,如查询、插入、更新和删除数据等。
pymysql模块由Python实现,它遵循Python Database API规范(PEP 249),这使得它与其他数据库API兼容,并使得在不同的数据库之间切换变得更加容易。
pymysql在Python开发者社区非常受欢迎,因为它易于使用、功能强大并且具有良好的性能。它提供了许多高级特性,如事务管理、连接池、数据类型转换等,使得开发数据库驱动的应用程序变得更加便捷和高效。
总之,pymysql模块是一个重要的工具,可帮助Python开发者轻松地与MySQL数据库进行交互和操作。
二、使用步骤
1.安装pymysql模块
在使用pymysql模块之前,首先需要将其安装到Python环境中。可以通过在命令行中运行以下命令来安装pymysql模块:
pip install pymysql
如遇【‘pip’ 不是内部或外部命令,也不是可运行的程序或批处理文件。】可查看本人另一篇文章来解决!
【三步解决】‘pip‘ 不是内部或外部命令,也不是可运行的程序或批处理文件。
2.连接数据库及常用操作
代码如下(示例):
# 导入pymysql模块
import pymysql
# 建立数据库连接
conn = pymysql.connect(
host='localhost', # 主机名(或IP地址)
port=3306, # 端口号,默认为3306
user='root', # 用户名
password='password', # 密码
charset='utf8mb4' # 设置字符编码
)
# 获取mysql服务信息(测试连接,会输出MySQL版本号)
print(conn.get_server_info())
# 创建游标对象
cursor = conn.cursor()
# 选择数据库
conn.select_db("mytable")
# 执行查询操作
cursor.execute('SELECT * FROM mytable')
# 获取查询结果,返回元组
result : tuple = cursor.fetchall()
# 关闭游标和连接
cursor.close()
conn.close()
在这个示例中,我们使用pymysql中的connect()函数建立与MySQL数据库的连接,需要提供数据库的主机地址、端口号、用户名、密码。此外我们还可以设置字符编码以确保正确处理数据中的特殊字符。
3.执行SQL语句
一旦建立了与数据库的连接,我们就可以执行各种SQL操作,例如插入、更新、删除和查询等。以下是一些常见的SQL操作示例:
插入数据
sql = "INSERT INTO mytable (name, age) VALUES ('John', 25)"
cursor.execute(sql)
conn.commit()
更新数据
sql = "UPDATE mytable SET age = 26 WHERE name = 'John'"
cursor.execute(sql)
conn.commit()
删除数据
sql = "DELETE FROM mytable WHERE name = 'John'"
cursor.execute(sql)
conn.commit()
查询数据
sql = "SELECT * FROM mytable"
cursor.execute(sql)
# 只要不涉及数据的更改,可以不需要调用commit()方法提交更改
result = cursor.fetchall()
for row in result:
print(row)
使用cursor.execute()方法来执行SQL语句,当更改表中数据时,必须调用conn.commit()方法来提交更改,否则数据库表中的数据不会发生改变。操作完成后,可以使用cursor.fetchall()方法获取查询结果,该方法返回一个元组。
如果觉得 commit() 方法有点麻烦的话,可以在创建连接时设置 autocommit = True,实现自动提交更改,这样就不需要每次执行完SQL操作后,都调用commit()方法啦。示例代码如下:
# 获取mysql连接对象
conn = pymysql.Connect(
host="localhost", # 主机名(或IP地址)
port=3306, # 端口号,mysql默认3306
user='root', # 用户名
password='password', # 密码
autocommit=True # 自动提交更改
)
4.错误处理
在操作数据库时,可能会遇到各种错误。Python和pymysql都给我们提供了一些方法来帮助处理错误,例如使用try-except块来捕获异常,以及使用conn.rollback()方法来回滚事务。
try:
# 执行一些操作
...
conn.commit()
except Exception as e:
print(f"发生错误:{e}")
conn.rollback()
finally:
cursor.close()
conn.close()
在这个示例中,try代码块中的操作可能会抛出异常。我们可以在except代码块中捕获异常,并通过打印错误消息来进行错误处理。另外,无论是否发生异常,都应该使用finally代码块来关闭游标和连接。
总结
本文介绍了Python中pymysql模块的基本使用方法。通过使用pymysql模块,我们可以轻松地连接、操作和管理MySQL数据库。无论是简单的查询还是复杂的事务处理,pymysql都为我们提供了强大而灵活的功能。
希望本文能够帮助你快速入门并掌握pymysql模块的使用!如果你想深入了解更多关于pymysql的内容,建议参考官方文档或其他相关资源。
pymysql官方文档:https://pymysql.readthedocs.io/
Python官方文档:https://docs.python.org/3/library/index.html
标签:
相关文章
最新发布
- 【Python】selenium安装+Microsoft Edge驱动器下载配置流程
- Python 中自动打开网页并点击[自动化脚本],Selenium
- Anaconda基础使用
- 【Python】成功解决 TypeError: ‘<‘ not supported between instances of ‘str’ and ‘int’
- manim边学边做--三维的点和线
- CPython是最常用的Python解释器之一,也是Python官方实现。它是用C语言编写的,旨在提供一个高效且易于使用的Python解释器。
- Anaconda安装配置Jupyter(2024最新版)
- Python中读取Excel最快的几种方法!
- Python某城市美食商家爬虫数据可视化分析和推荐查询系统毕业设计论文开题报告
- 如何使用 Python 批量检测和转换 JSONL 文件编码为 UTF-8
点击排行
- 版本匹配指南:Numpy版本和Python版本的对应关系
- 版本匹配指南:PyTorch版本、torchvision 版本和Python版本的对应关系
- Python 可视化 web 神器:streamlit、Gradio、dash、nicegui;低代码 Python Web 框架:PyWebIO
- 相关性分析——Pearson相关系数+热力图(附data和Python完整代码)
- Python与PyTorch的版本对应
- Anaconda版本和Python版本对应关系(持续更新...)
- Python pyinstaller打包exe最完整教程
- Could not build wheels for llama-cpp-python, which is required to install pyproject.toml-based proj