cursor = conn.execute(TEMPLATE, {'var1':'value1', 'var2':'value2'})
conn是一个oracle连接。
上面的语句在1,2秒内返回。然后我会:
fields = [d[0] for d in cursor.description]
[dict(izip(fields, row)) for row in cursor]
为了将结果转换为一个字典列表。第二条语句(“for row in cursor…”)被卡住了,就像这样,它似乎无限期地运行。
现在,这是在我们的服务器上的一个远程框上运行的,如果我在本地框上对同一个数据库运行相同的查询,所有内容都会在30秒内返回,距离游标只有200行。对于结果中只有200行的不同框,它怎么能运行这么长时间连接执行()语句返回太快(在框中)?
我还能做些什么来进一步调查呢?