Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Buscando grandes dados do Oracle em Python


Você deve usar cur.fetchmany() em vez disso, ele buscará um pedaço de linhas definido por arraysise (256)

Código 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

Em seguida, faça seu processamento em um loop for;
for i, chunk  in enumerate(chunks(cur)):
            for row in chunk:
                     #Process you rows here

É exatamente assim que eu faço no meu TableHunter for Oracle .