同福

Python使用pymysql查询数据显示字段名称的方法【20210424】

介绍

介绍

前面福哥给大家介绍了使用pymysql操作MySQL数据库的方法,使用pymysql查询数据使用fetchone或者fetchall方法,但是无论是fetchone还是fetchall得到的数据结果都是list类型的,里面并不包含字段名称。

但是在实际的编程当中通过list的索引去定位字段值还是很不方便的,相比较还是dict类型更好一些,怎么办呢?

字典游标

DictCursor

原来pymysql有一个游标属性可以将查询游标改成输出字典(dict)类型的结果,只不过默认情况下游标是数组(list)类型的结果。

示例

try:
    cn = pymysql.connect("192.168.2.168", "root", "abcdef", db="tfums", charset="utf8")
    cursorDict = cn.cursor(pymysql.cursors.DictCursor)
except Exception as e:
    print(e)
    exit()
    
try:
    cursorDict.execute("select * from user order by userID desc")
    users = cursorDict.fetchall()
    print("数据表user的数据列表")
    print("")
    for user in users:
        print(str(user["userID"]) + "@" + user["userName"])
    print("")
except Exception as e:
    print(e)

home/topic/2021/0424/20/671d0b47475d129cf11dace8b7e899cf.jpg

总结

使用字典游标虽然在查询速度上相比较数组游标要慢一些,但是字典游标得到的查询结果是字典类型,这个可以大大地提高我们的编程体验,这个还是值得的。