Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Tìm nạp dữ liệu khổng lồ từ Oracle bằng Python

Bạn nên sử dụng cur.fetchmany() Thay vào đó, nó sẽ tìm nạp phân đoạn các hàng được xác định bởi mảng (256)

Mã Python:

def chunks(cur): # 256
    global log, d
    while True:
        #log.info('Chunk size %s' %  cur.arraysize, extra=d)
        rows=cur.fetchmany()

        if not rows: break;
        yield rows

Sau đó, thực hiện xử lý của bạn trong một vòng lặp for;

for i, chunk  in enumerate(chunks(cur)):
            for row in chunk:
                     #Process you rows here

Đó chính xác là cách tôi thực hiện trong TableHunter cho Oracle .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chế độ xem cụ thể hóa với trình kích hoạt?

  2. Tại sao OracleDataAdapter.Fill () Rất chậm?

  3. Truy vấn SQL của Oracle để loại trừ các hàng có chứa các ký tự không phải số

  4. Lệnh Spool:Không xuất câu lệnh SQL vào tệp

  5. CHÈN 10 triệu truy vấn dưới 10 phút trong Oracle?