python cx_Oracle游标不返回有效查询的行

python cx_Oracle游标不返回有效查询的行,python,sql,cursor,cx-oracle,fetchall,Python,Sql,Cursor,Cx Oracle,Fetchall,在这件事上我的头撞在桌子上 我的cx_Oracle游标没有返回有效查询的行,我无法找出原因 同一连接从同一架构中的其他表返回预期结果。。。例如,如果我简单地将查询中引用的表名从表A更改为表B,它就可以正常工作 在使用相同的用户/连接字符串的SQL Developer/SQL Plus中,查询工作正常。我在调试期间复制/粘贴了cursor.statement,以验证完全相同的语句,没有输入错误 我已将查询简化为尽可能简单的形式 1. select * from SCHEMA.TABLE_A 及

在这件事上我的头撞在桌子上

我的cx_Oracle游标没有返回有效查询的行,我无法找出原因

同一连接从同一架构中的其他表返回预期结果。。。例如,如果我简单地将查询中引用的表名从表A更改为表B,它就可以正常工作

在使用相同的用户/连接字符串的SQL Developer/SQL Plus中,查询工作正常。我在调试期间复制/粘贴了cursor.statement,以验证完全相同的语句,没有输入错误

我已将查询简化为尽可能简单的形式

1. select * from SCHEMA.TABLE_A

使用cx_Oracle执行查询1时,不返回任何行,但在SQLPlus/SQL Developer等中返回预期的行

使用cx\U Oracle,查询2可以正常工作

我有已验证的权限,但这显然是在我使用(并验证)cx_Oracle中的用户/连接与SQL工具中的用户/连接相同时起作用的

代码不能再简化了,我不认为要隔离问题,但我可能对一些非常明显的事情视而不见:

import cx_Oracle

db_conn=cx_Oracle.connect('user/password@localhost:1521/TEST_PDB')
cur = db_conn.cursor()
qry = 'select * from SCHEMA_NAME.TABLE_A'
cur.execute(qry)
{cx_Oracle.Cursor位于{cx_Oracle.Connection touser@localhost:1521/TEST_PDB}

[]

0

然而,另一个表/查询可以工作:

qry = 'select * from SCHEMA_NAME.TABLE_B'
cur.execute(qry)
cur.fetchall()
[(12320573611891L,'23.5.2126981',0,'NEW','UPDATE',datetime.datetime(2016,5,24,9,0),48,0,None,None)]

这是迄今为止我唯一遇到这个问题的表

我使用的是Oracle 12c、python 2.7.11 64位、ojdbc6.jar和64位InstantClient

有什么想法吗?
在我的眼睛或大脑看不到明显的地方发现任何东西?

我找到了我对这个问题视而不见的地方

这些记录没有提交。 我能够在插入记录的会话(SQLDeveloper)中使用相同的用户查询记录

这导致了“到底发生了什么”
我应该知道/更好。

这些表的实际名称是什么?表A可能是一个?通过接受自己的答案,您可以帮助减少没有被接受答案的问题列表,甚至任何答案。请阅读更多关于回答您自己问题的信息。
cur.fetchall()
cur.rowcount
qry = 'select * from SCHEMA_NAME.TABLE_B'
cur.execute(qry)
cur.fetchall()