#详细说明# pymysql.cursorsde参数解析

pymysql.cursorsde参数的可选值如下:

类型 描述
Cursor 普通的游标对象,默认创建的游标对象
SSCursor 不缓存游标,主要用于当操作需要返回大量数据的时候
DictCursor 以字典的形式返回操作结果
SSDictCursor 不缓存游标,将结果以字典的形式进行返回

这里主要分析DictCursor,在默认情况下cursor方法返回的是BaseCursor类型对象,BaseCursor类型对象在执行查询后每条记录的结果以列表(list)表示。
如果要返回字典(dict)表示的记录,就要设置cursor参数为pymysql.cursors.DictCursor类。
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)

默认情况下数据库查询的返回结果如下:

>>> import pymysql
>>> conn = MySQLdb.connect(host='192.168.1.103', port=3306, user='testacc', passwd='test1234', db='1dcq')
>>> cursor = conn.cursor()
>>> cursor.execute('SELECT * FROM pagesobject LIMIT 0, 1') 
>>> cursor.fetchone()
(1L, 0L, '???', 'true', None, 0)
>>> cursor.close()

将cursor参数设定为pymysql.cursors.DictCursor情况下,数据库查询的返回结果如下:

>>> cursor = conn.cursor(MySQLdb.cursors.DictCursor)
>>> cursor.execute('SELECT * FROM pagesobject LIMIT 0, 1')
>>> cursor.fetchone() # 等价fetchoneDict()
{'PageDesc': None, 'P_Id': 0L, 'isParent': 0, 'Html_open': 'true', 'PageName': '???', 'Id': 1L}
>>> cursor.close()
>>>conn.close()
发布了59 篇原创文章 · 获赞 2 · 访问量 4691

猜你喜欢

转载自blog.csdn.net/lch551218/article/details/104288312