Psycopg2 cursor.execute返回生成器

ace*_*ner 3 python database postgresql

假设我只有1GB的内存和1TB的硬盘空间。

这是我的代码,我正在使用postgres数据库。

import psycopg2

try:
   db = psycopg2.connect("database parameters")
   conn = db.cursor()
   conn.execute(query) 

   #At this point, i am running 
   for row in conn:
Run Code Online (Sandbox Code Playgroud)

对于这种情况,我想可以肯定地认为conn是一个生成器,因为我似乎无法在线找到确定的答案,并且由于无法承受系统崩溃而无法在自己的环境中尝试使用。

我期望此查询返回的数据超过100 GB

我正在使用python 2.7和psycopg2库

jja*_*nes 6

如果您在示例中使用匿名游标,那么整个查询结果将被读入内存。

如果使用命名游标,则它将遍历数据从服务器中分块读取。