前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Python Python-MySQLdb中的DictCursor使用方法简介

Python Python-MySQLdb中的DictCursor使用方法简介

作者头像
授客
发布2019-09-11 14:26:08
发布2019-09-11 14:26:08
3.3K0
举报
文章被收录于专栏:授客的专栏授客的专栏

DictCursor的这个功能是继承于CursorDictRowsMixIn,这个MixIn提供了3个额外的方法: fetchoneDict、fetchmanyDict、fetchallDict。

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

cur = conn.cursor(cursorclass=MySQLdb.cursors.DictCursor)

这个参数也可在调用connect方法建立连接时设置,如下:

>>> conn = MySQLdb.connect(host='192.168.1.103', port=3306, user='testacc', pass

wd='test1234', db='1dcq', cursorclass=MySQLdb.cursors.DictCursor)

>>>conn.close()

例子:

>>> import MySQLdb

>>> 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')

1L

>>> cursor.fetchone()

(1L, 0L, '???', 'true', None, 0)

>>> cursor.close()

对比实验如下:

>>> cursor = conn.cursor(MySQLdb.cursors.DictCursor)

>>> cursor.execute('SELECT * FROM pagesobject LIMIT 0, 1')

1L

>>> cursor.fetchone() # 等价fetchoneDict()

{'PageDesc': None, 'P_Id': 0L, 'isParent': 0, 'Html_open': 'true', 'PageName': '???', 'Id': 1L}

>>> cursor.close()

>>>conn.close()

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-01-18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档