python - cursor.rowfactory (cx_oracle) 如何以字典格式返回每一行?
问题描述
这是如何运作的?我查阅了文档。它说cursor.rowfactory是一个属性,让用户定义如何检索行的格式。但是我没有看到任何关于如何定义它的例子。然后我在上面找到了答案。我完全迷失了方向,不知道那在做什么。谁能解释这是在做什么?属性是什么.rowfactory
?以及如何makeDictFactory
运作?正在createRow
做什么,args
包含什么?有什么文件可以查吗?
def makeDictFactory(cursor):
columnNames = [d[0] for d in cursor.description]
def createRow(*args):
return dict(zip(columnNames, args))
return createRow
curs.rowfactory = makeDictFactory(curs)
curs.fetchone()
解决方案
看例子https://github.com/oracle/python-cx_Oracle/blob/master/samples/GenericRowFactory.py
另请查看 cx_Oracle 教程https://github.com/oracle/python-cx_Oracle/tree/master/samples/tutorial
另请参阅 cx_Oracle 上的演示文稿,例如https://static.rainfocus.com/oracle/oow18/sess/1523651275582001fu8I/PF/TIP4076%20-%20Python%20and%20Oracle%20Database%20on%20the%20Table_1540587368635001aNOw.pdf
推荐阅读
- javascript - 发送帖子详细信息也发送我的提交/帖子
- c# - 在 Visual Studio 中从 C# 调用 SSIS 任务
- node.js - 如何在dynamoose中根据注册日期对所有项目进行排序
- sql - 如何在 SQL 中将子字符串中的数字转换为日期格式?
- spring-data-jpa - 在 JPA 查询中,如何传入一个列表以用作单列表?
- powershell - 正在解释的变量中的变量
- android - 如何删除 ListenerForSingleValueEvent?
- reactjs - 将 props 传递给静态 React 组件
- php - 数据未保存在数据库中。Laravel 与 Ajax
- php - 为什么 OrWhereHas 在 Laravel 中无法正常工作