Python中模块pymysql查询结果后如何获取字段列表
前言
大家在使用pymysql的时候,通过fetchall()或fetchone()可以获得查询结果,但这个返回数据是不包含字段信息的(不如php方便)。查阅pymysql源代码后,其实获取查询结果源代码也是非常简单的,直接调用cursor.description即可。
譬如:
db=pymysql.connect(...) cur=db.cursor() cur.execute(sql) print(cur.description) result=cur.fetchall() data_dict=[] forfieldincur.description: data_dict.append(field[0]) print(data_dict)
在pymysql的pymysql/cursors.py中,找到classCursor可以看到如下代码:
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()获得。
总结
好了,先说到这里了。以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对毛票票的支持。