Python - 将输出作为字典返回 - MySQL

7
我已经编写了一个类来处理使用外部模块连接mysql,但是当我获取数据时,我希望它返回的格式是:
{ 'id': '1', 'username': 'Test'}

目前返回的是:

(1, u'Test')

我使用的代码是:

我使用的代码是:

def executeQuery(self, query):
    if(self.mysqlSuccess):
        cursor = self.cnx.cursor()
        cursor.execute(query)
        for row in cursor:
            print row
executeQuery('SELECT * FROM `users`')

不完全是一个复制,但非常接近(也许是OP需要的答案): https://dev59.com/7XVC5IYBdhLWcg3wsTbv - Rod
可能是重复的问题:Python:如何使用mysqldb将MySQL表导入为字典? - Joe Doherty
2个回答

17

当您定义游标时,我找到了解决方法:您需要这样做

cursor = db.cursor(dictionary=True)

我使用的MySQL包是mysql.connector


我已经使用namedtuple几周来实现类似的结果,谢谢。 - Fernando Popoca Ortiz

5

在连接MySQL时,您可以使用DictCursor。

import MySQLdb.cursors

cnx = MySQLdb.connect(user='joe', passwd='password', db='dbname',
                      cursorclass=MySQLdb.cursors.DictCursor)

如果你使用的是不同的mysql包,那么只需查看DictCursor的文档。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接