首页 > 数据库技术 > 详细

python oracle 查询返回字典

时间:2018-05-17 17:46:07      阅读:1009      评论:0      收藏:0      [点我收藏+]

from: https://sourceforge.net/p/cx-oracle/mailman/message/27145597/

I‘d do it with a "row factory", here are two examples, one which builds a dictionary, the other one builds a "named tuple" and is very similar to sqlite3.Row.

def makeDictFactory(cursor):
    columnNames = [d[0] for d in cursor.description]
    def createRow(*args):
        return dict(zip(columnNames, args))
    return createRow

def makeNamedTupleFactory(cursor):
    columnNames = [d[0].lower() for d in cursor.description]
    import collections
    Row = collections.namedtuple(Row, columnNames)
    return Row
Then, just after the cs.execute() call, you can add:
cs.rowfactory = makeDictFactory(cs)
# or
cs.rowfactory = makeNamedTupleFactory(cs)

-- 
#Amaury Forgeot d‘Arc

python oracle 查询返回字典

原文:https://www.cnblogs.com/buxizhizhoum/p/9052268.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!