Als u psycopg2 gebruikt, wilt u een benoemde cursor gebruiken, anders zal het proberen de volledige querygegevens in één keer in het geheugen te lezen.
cursor = conn.cursor("some_unique_name")
cursor.execute("SELECT aid FROM pgbench_accounts")
for record in cursor:
something(record)
Hiermee worden de records van de server opgehaald in batches van 2000 (standaardwaarde van itersize
) en verpak ze vervolgens een voor een in de lus.