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('selectb_idfrombloglimit1')
data=cur.fetchall()
cur.close()
conn.close()
打印:
forrowindata: printtype(row) printrow
执行结果:
<type'tuple'> (1L,)
为tuple类型。
我们可以这么干使得数据查询结果返回字典类型,即字段=数据
导入模块
importMySQLdb.cursors
在连接函数里加上这个参数 cursorclass=MySQLdb.cursors.DictCursor如:
MySQLdb.connect(
host=host,
user=user,
passwd=passwd,
db=db,
port=port,
charset='utf8',
cursorclass=MySQLdb.cursors.DictCursor
)再重新运行脚本,看看执行结果:
<type'dict'>
{'b_id':1L}
搞定!
注意,在连接的时候port如果要指定则值必须是整型,否则会出错!