Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-02-2004
taote taote is offline
Miembro
 
Registrado: feb 2004
Posts: 23
Poder: 0
taote Va por buen camino
Question ORDER BY y PacketRecords

Hola a todos:

Estoy haciendo pruebas con una base de datos en Firebird. El caso es que tengo una consulta sobre 6 tablas que devuelve 90000 registros. Estoy utilizando DBExpress con proveedores y clientdatasets. En el ClientDataSet tengo activo FetchOnDemand y en PacketRecords pongo el valor de 100.

La consulta tarda muy poco en realizarse y tambien muy poco en devolverme los 100 primeros registros, si voy avanzando pues bien tarda muy poco en ir trayendo los registros, y si voy hasta el final de golpe si tarda supongo que al traer todos los registros.

El problema esta en cuando incluyo un ORDER BY por uno de los campos de una tabla que además es clave primaria de esa tabla, entonces la consulta tarda mucho mas de un minuto y medio en traer los 100 primeros registros, supongo que lo que hace es ejecutar la consulta, ordenar los 90000 registros y devolver las 100 primeras filas y por eso tarda, al ordenar.

Lo he intentado con una vista y el comportamiento es similar. Entonces, si yo necesito tenerlos ordenados, ¿hay alguna manera de hacer esto y que no tarde tanto?.

Gracias de antemano.
Responder Con Cita
  #2  
Antiguo 19-02-2004
taote taote is offline
Miembro
 
Registrado: feb 2004
Posts: 23
Poder: 0
taote Va por buen camino
Quiero añadir que he probado la consulta a través de la aplicación IBExpert incluyendo el ORDERBY y al mostrar los datos en la rejilla tarda muy poco (milisegundos) en mostrar los primeros registros, y al ir hasta el final directamente si tarda lo que debería. Supongo que estará programado de un modo similar pero no se que metodo de acceso utilizarán.

A mi con ODBC y con DBExpress me tarda al incluir el ORDER BY. ¿Puede ser alguna propiedad del Provider o del ClientDataSet que se me haya pasado?

Cualquier ayuda será bien recibida.

SalU2.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 06:32:18.


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