前言
大家在使用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()获得。
总结
好了,先说到这里了。以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对积木网的支持。
Python实现随机生成有效手机号码及身份证功能示例
本文实例讲述了Python实现随机生成有效手机号码及身份证功能。分享给大家供大家参考,具体如下:中国那么大,人那么多,几乎人手一部手机。手机
CentOS 6.5下安装Python 3.5.2(与Python2并存)
本文主要给大家介绍了关于CentOS6.5安装Python3.5.2并与Python2并存的相关内容,分享出来供大家参考学习,下面来看看详细的介绍:安装步骤如下1、准备编
Python编程实现双击更新所有已安装python模块的方法
本文实例讲述了Python编程实现双击更新所有已安装python模块的方法。分享给大家供大家参考,具体如下:首先声明我是一个升级控。几乎每天会查看一