Om du använder psycopg2 kommer du att vilja använda en namngiven markör, annars kommer den att försöka läsa in hela frågeinformationen i minnet på en gång.
cursor = conn.cursor("some_unique_name")
cursor.execute("SELECT aid FROM pgbench_accounts")
for record in cursor:
something(record)
Detta kommer att hämta posterna från servern i omgångar om 2000 (standardvärdet itersize
) och paketera dem sedan till slingan en i taget.