Python操作MySQL数据库:连接与增删改查完整指南

周予安
周予安
发布时间:2026-10-11| 3人浏览过
原创

本文详细拆解了基于Python的pymysql模块操作MySQL数据库的核心步骤,内容涵盖库的安装配置、多参数连接构建、基础的CRUD代码实现、事务管理与异常回滚逻辑,帮助开发者快速掌握跨平台数据库交互的实际编码流程。

连接与初始化环境

第1步:安装依赖库

在使用Python进行数据库交互前,需先通过终端指令安装第三方驱动。pymysql是一款纯Python编写的MySQL连接工具,广泛兼容各类操作系统环境:

pip install pymysql

第2步:建立数据库连接

导入对应模块后,借助pymysql.connect()函数并填入相关凭证即可获取连接句柄。常用参数分别指定服务所在的主机名或IPhost、访问账号user、登录凭据password以及目标database名称。

import pymysql
# 实例化数据库连接对象
db = pymysql.connect(host='localhost', user='root', password='root', database='test')
# 获取负责发送SQL指令的游标
cursor = db.cursor()

执行常见SQL操作

获得游标后,可直接调用execute()接口下发结构化查询语言。以下为针对同一张表的读写核心代码示例:

# 1. 写入记录
sql_insert = "INSERT INTO students(name, age) VALUES('Tom', 20)"
cursor.execute(sql_insert)
db.commit()  # 数据落盘需主动提交

# 2. 检索数据
sql_select = "SELECT * FROM students"
cursor.execute(sql_select)
results = cursor.fetchall()  # 批量拉取返回的集合
for row in results:
    print(row)

# 3. 修改指定条目
sql_update = "UPDATE students SET age = 21 WHERE name = 'Tom'"
cursor.execute(sql_update)
db.commit()

# 4. 移除无效行
sql_delete = "DELETE FROM students WHERE name = 'Tom'"
cursor.execute(sql_delete)
db.commit()

在实施写入、修改或删除操作后,数据库会话默认保持未确认状态。必须显式调用db.commit()进行事务提交,否则一旦断开链接,所作的变动均会丢失。

异常捕获与收尾工作

第3步:建立安全回滚机制

由于网络抖动或拼写失误均可能引发执行异常,应当采用标准控制流进行隔离防御。若捕获到报错信号,应及时启动反悔机制确保存储层一致:

try:
    cursor.execute(sql_insert)
    db.commit()
except Exception as e:
    db.rollback()  # 阻断脏数据写入
    print("运行受阻:", e)

第4步:彻底释放资源

在完成既定任务或者遇到不可恢复故障退出时,要严格执行清理规程。逐一注销游标通道并终结底层长连接,避免拖累系统并发能力:

# 终止当前指针活动
cursor.close()
# 切断网络连接
$db.close()

以上就是在Python生态下通过pymysql中间件接管MySQL系统的标准作业规范。实际工程中通常结合参数化预编译防范注入攻击。关于更多编程自动化与后端开发实操的技巧资料欢迎继续阅读本站系列文章!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。