Nếu bạn đang sử dụng psycopg2, thì bạn sẽ muốn sử dụng một con trỏ được đặt tên, nếu không, nó sẽ cố gắng đọc toàn bộ dữ liệu truy vấn vào bộ nhớ cùng một lúc.
cursor = conn.cursor("some_unique_name")
cursor.execute("SELECT aid FROM pgbench_accounts")
for record in cursor:
something(record)
Thao tác này sẽ tìm nạp các bản ghi từ máy chủ theo lô 2000 (giá trị mặc định của itersize
) và sau đó chia chúng ra từng vòng một.