Python使用pymysql小技巧

发布时间 - 2026-01-11 01:43:05    点击率:

在使用pymysql的时候,通过fetchall()或fetchone()可以获得查询结果,但这个返回数据是不包含字段信息的(不如php方便)。查阅pymysql源代码后,其实获取查询结果源代码也是非常简单的,直接调用cursor.description即可。

譬如:

db = pymysql.connect(...)
cur = db.cursor()
cur.execute(sql)
print(cur.description)
result = cur.fetchall()
data_dict=[]
for field in cur.description:
  data_dict.append(field[0])
print(data_dict)

在pymysql的 pymysql/cursors.py 中,找到 class Cursor 可以看到如下代码:

def __init__(self, connection):
  self.connection = connection
  self.description = None
  self.rownumber = 0
  self.rowcount = -1
  self.arraysize = 1
  self._executed = None
  self._result = None
  self._rows = None
  self._warnings_handled = False

因此,调用 cur.rowcount 是可以迅速返回查询结果记录数的,不需要通过 len() 获得。


# pymysql  # 使用  # python3  # 使用文档  # Python中操作mysql的pymysql模块详解  # Python MySQL数据库连接池组件pymysqlpool详解  # Python中模块pymysql查询结果后如何获取字段列表  # python使用pymysql实现操作mysql  # 详解使用pymysql在python中对mysql的增删改查操作(综合)  # Python 3.x 连接数据库示例(pymysql 方式)  # Python使用pymysql从MySQL数据库中读出数据的方法  # python 3.6 +pyMysql 操作mysql数据库(实例讲解)  # Python3连接MySQL(pymysql)模拟转账实现代码  # python3.6使用pymysql连接Mysql数据库  # python和mysql交互操作实例详解【基于pymysql库】  # 查询结果  # 源代码  # 不需要  # 可以看到  # 可以获得  # 不包含  # 直接调用  # brush  # db  # class  # py  # cur  # connect  # execute  # pre  # fetchone  # fetchall  # php  # br 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 实例解析angularjs的filter过滤器  如何生成腾讯云建站专用兑换码?  如何做网站制作流程,*游戏网站怎么搭建?  html文件怎么打开证书错误_https协议的html打开提示不安全【指南】  如何选择PHP开源工具快速搭建网站?  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  如何用美橙互联一键搭建多站合一网站?  Laravel怎么防止CSRF攻击_Laravel CSRF保护中间件原理与实践  laravel怎么通过契约(Contracts)编程_laravel契约(Contracts)编程方法  如何用AWS免费套餐快速搭建高效网站?  Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案  如何快速使用云服务器搭建个人网站?  详解jQuery中的事件  高端建站三要素:定制模板、企业官网与响应式设计优化  edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】  详解Android中Activity的四大启动模式实验简述  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  JavaScript Ajax实现异步通信  PHP 实现电台节目表的智能时间匹配与今日/明日轮播逻辑  详解jQuery中基本的动画方法  Laravel中间件如何使用_Laravel自定义中间件实现权限控制  Python图片处理进阶教程_Pillow滤镜与图像增强  如何在 Pandas 中基于一列条件计算另一列的分组均值  实现点击下箭头变上箭头来回切换的两种方法【推荐】  HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】  JavaScript模板引擎Template.js使用详解  Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程  如何在局域网内绑定自建网站域名?  文字头像制作网站推荐软件,醒图能自动配文字吗?  Laravel如何实现模型的全局作用域?(Global Scope示例)  Laravel 419 page expired怎么解决_Laravel CSRF令牌过期处理  三星网站视频制作教程下载,三星w23网页如何全屏?  java中使用zxing批量生成二维码立牌  Angular 表单中正确绑定输入值以确保提交与验证正常工作  微信小程序 wx.uploadFile无法上传解决办法  米侠浏览器网页图片不显示怎么办 米侠图片加载修复  Laravel如何操作JSON类型的数据库字段?(Eloquent示例)  Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控  Android中Textview和图片同行显示(文字超出用省略号,图片自动靠右边)  香港服务器WordPress建站指南:SEO优化与高效部署策略  Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能  如何快速选择适合个人网站的云服务器配置?  iOS中将个别页面强制横屏其他页面竖屏  Laravel项目怎么部署到Linux_Laravel Nginx配置详解  Python高阶函数应用_函数作为参数说明【指导】  Laravel如何配置和使用队列处理异步任务_Laravel队列驱动与任务分发实例  javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】  教你用AI润色文章,让你的文字表达更专业  nodejs redis 发布订阅机制封装实现方法及实例代码  如何快速建站并高效导出源代码?