首页 > 编程 > Python > 正文

Python中模块pymysql查询结果后如何获取字段列表

2020-01-04 17:16:36
字体:
来源:转载
供稿:网友

前言

大家在使用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()获得。

总结

好了,先说到这里了。以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对VEVB武林网的支持。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表