Python新手快速上手pymysql,教你秒连数据库不求人,轻松搞定数据操作
- 问答
- 2026-01-03 08:30:46
- 3
(来源:CSDN博客《Python操作MySQL数据库之pymysql模块》) Python想跟MySQL数据库打交道,光靠Python自己是不行的,得找个帮手,这个帮手就叫pymysql,它就像一个翻译官,能把Python说的话(代码)翻译成MySQL数据库能听懂的命令,下面我就手把手带你用这个翻译官,让你快速上手,自己就能轻松搞定数据库的连接和操作。
第一步:安装pymysql“翻译官”
你的电脑上得请来这位“翻译官”,方法很简单,打开你的命令提示符(Windows上是cmd,Mac上是终端),输入下面这行魔法咒语,然后按回车:
pip install pymysql
(来源:PyPI官方pymysql文档)
如果看到提示“Successfully installed pymysql-...”,恭喜你,安装成功了!要是失败了,很可能是网络问题,试试用国内的镜像源,比如加上-i https://pypi.tuna.tsinghua.edu.cn/simple。
第二步:建立连接——跟数据库“握手”
安装好了,接下来就要让Python和数据库建立联系了,这个过程叫“连接”,想象一下,你要去朋友家做客,得先知道他家的地址、门牌号,还得有钥匙或者知道密码才行,连接数据库也是同样的道理。
你需要准备以下几条关键信息:
- 主机地址(host): 数据库在哪台电脑上,如果数据库就在你自己的电脑上,那就写
localhost或0.0.1。 - 端口号(port): 进门的端口,MySQL默认是3306,就像朋友家的门牌号。
- 用户名(user): 你的用户名,比如常见的
root。 - 密码(password): 这个最重要,是你身份的证明。
- 数据库名(database): 你要操作的具体是哪个数据库,好比朋友家有很多房间,你得指定去哪个房间。
准备好这些,就可以写连接代码了:
import pymysql # 首先要把翻译官请进来
# 开始连接
db = pymysql.connect(
host='localhost', # 数据库地址
user='root', # 你的用户名
password='123456', # 你的密码,这里是我瞎写的,你要换成自己的
database='test_db', # 你要用的数据库名
port=3306 # 端口号
)
print("恭喜!数据库连接成功!")
(来源:RUNOOB.COM Python MySQL连接教程)
运行这段代码,如果打印出成功的信息,说明你已经顺利和数据库“握手”了!这个db对象就是你后续所有操作的起点。
第三步:获取游标——你的“手指”
连接成功之后,你不能直接对着数据库指手画脚,需要一个工具来帮你指点具体的位置和执行命令,这个工具就是“游标”(cursor),你可以把它想象成是你的手指或者一个指针。
# 创建游标对象 cursor = db.cursor()
你就可以通过这个cursor“手指”去干各种事情了。

第四步:执行SQL语句——让“翻译官”传话
核心部分来了!我们怎么让数据库干活呢?就是通过执行SQL语句,SQL是一种专门用来管理数据库的语言,你可以用它来查数据、增数据、改数据、删数据,而pymysql的作用,就是把你的SQL命令“翻译”给数据库听。
查询数据(SELECT)
我想查看一个叫users的表里所有用户的信息:
sql = "SELECT * FROM users" # 编写SQL语句:从users表中选择所有数据
cursor.execute(sql) # 让游标执行这个SQL语句
# 获取所有结果
results = cursor.fetchall() # fetchall()是取出所有查询到的结果
for row in results:
print(row) # 每一行数据都是一个元组,(1, '张三', 20)
(来源:知乎专栏《Python中使用PyMySQL操作数据库》)
除了fetchall()一次性拿回所有数据,还有fetchone()(只拿一条)和fetchmany(数量)(拿指定条数),适合数据量很大的时候用。
插入数据(INSERT)
我们要新增一个用户:

sql = "INSERT INTO users (name, age) VALUES (%s, %s)" # %s是占位符,防止SQL注入攻击
values = ('李四', 25) # 要插入的具体值
try:
cursor.execute(sql, values) # 执行插入操作
db.commit() # 提交事务,这一步非常重要!不提交数据不会真正保存
print("插入数据成功!")
except Exception as e:
db.rollback() # 如果出错了,回滚事务,就像什么都没发生过
print(f"插入数据失败:{e}")
这里有两个关键点:一是用%s做占位符,而不是用字符串拼接,这样更安全;二是操作增、删、改之后,必须用db.commit()确认提交,否则数据库不会真正更新。
修改和删除数据(UPDATE/DELETE)
修改和删除的操作流程和插入非常像,只是SQL语句不同。
修改数据:
sql = "UPDATE users SET age = %s WHERE name = %s" values = (26, '李四') # 把李四的年龄改成26 cursor.execute(sql, values) db.commit()
删除数据:
sql = "DELETE FROM users WHERE name = %s"
value = ('李四',) # 注意单个参数后面要加个逗号,表示是元组
cursor.execute(sql, value)
db.commit()
第五步:收尾工作——关门走人
所有操作都做完后,一定要记得关闭游标和连接,释放资源,这就像去朋友家做客,离开时要关门一样,是个好习惯。
cursor.close() # 关闭游标
db.close() # 关闭数据库连接
print("连接已关闭")
(来源:多个技术博客常见提醒) 好了,以上就是用pymysql操作MySQL数据库最核心、最常用的步骤,总结一下就是:安装模块 -> 连接数据库 -> 获取游标 -> 执行SQL -> 提交或回滚 -> 关闭连接,多练习几遍,你就能熟练地让你的Python程序和小伙伴MySQL数据库愉快地聊天了!遇到问题别怕,多查查错误信息,很快就能解决。
本文由度秀梅于2026-01-03发表在笙亿网络策划,如有疑问,请联系我们。
本文链接:http://waw.haoid.cn/wenda/73596.html
