Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Paginacion de consulltas TADOQuery - Oracle (https://www.clubdelphi.com/foros/showthread.php?t=78984)

hlbarragan 31-05-2012 18:32:00

Paginacion de consulltas TADOQuery - Oracle
 
Saludos a todos y de antemano gracias por su colaboracion.

En la empresa en la que trabajo existe un problema con el sistema de apoyo de gestion del negocio y este consiste en un problema con la generacion de un reporte de gestion general relacionado con gran volumen de datos que se descargan.

El reporte en cuestion se genera de forma satisfactoria por oracle y los datos son transmitidos a un componente de tipo TADOQuery a traves de cual se hace la consulta, debido al gran volumen de datos manejado, la memoria consumida por el programa se eleva a niveles mayores a 1.5GB tras lo cual el sistema reporta un excepcion de memoria insuficiente (con toda la razon....).

El objeto de la descarga es la generacion de un archivo de tipo csv que requiere un equipo de analistas de la empresa para su procesamiento.

Yo tengo entendido que oracle soporta una forma de consulta por paginacion pero no he encontrado informacion de como realizar paginacion para que el motor de BD realice la consulta completa, pero solo transmita al componente TADOQuery conjuntos o paginas de informacion para que estas se añadan de forma secuencial al archivo CSV, y de esta forma no sobrecargar el consumo de memoria del equipo en el cual se ejecuta el programa.

hlbarragan 05-06-2012 21:26:05

Saludos a todos,

Cualquier ayuda respecto del tema seria muy apreciada.

mightydragonlor 05-06-2012 21:41:57

Código SQL [-]
SELECT *
  FROM ( SELECT A.*, ROWNUM row_number
           FROM (
                SELECT primera_columna, segunda_columna
                FROM mi_tabla
            ) A
          WHERE ROWNUM <= n_end_row
    )
WHERE row_number >= n_start_row;

Espero te sirva.
Saludos.


La franja horaria es GMT +2. Ahora son las 05:01:16.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi