好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Python中让MySQL查询结果返回字典类型的方法

Python的MySQLdb模块是Python连接MySQL的一个模块,默认查询结果返回是tuple类型,只能通过0,1..等索引下标访问数据
默认连接数据库:

代码如下:


MySQLdb.connect(
host=host,
user=user,
passwd=passwd,
db=db,
port=port,
charset='utf8'
)


查询数据:

代码如下:


cur = conn.cursor()
cur.execute('select b_id from blog limit 1')
data = cur.fetchall()
cur.close()
conn.close()


打印:

代码如下:


for row in data:
print type(row)
print row


执行结果:

代码如下:



(1L,)


为tuple类型。
我们可以这么干使得数据查询结果返回字典类型,即 字段=数据
导入模块

代码如下:


import MySQLdb.cursors


在连接函数里加上这个参数 cursorclass = MySQLdb.cursors.DictCursor 如:

代码如下:


MySQLdb.connect(
host=host,
user=user,
passwd=passwd,
db=db,
port=port,
charset='utf8',
cursorclass = MySQLdb.cursors.DictCursor
)


再重新运行脚本,看看执行结果:

代码如下:



{'b_id': 1L}


搞定!
注意,在连接的时候port如果要指定则值必须是整型,否则会出错!

查看更多关于Python中让MySQL查询结果返回字典类型的方法的详细内容...

  阅读:42次