Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-05-2004
cacuna cacuna is offline
Miembro
 
Registrado: sep 2003
Posts: 54
Poder: 21
cacuna Va por buen camino
Pregunta:Como agilizo mis consultas lentas(sp)?

Saludos a todos los foristas.
Desarrollo una aplicacion con Delphi 7, IBX y Firebird 1.5.
La base de datos tiene una tabla con 100,000 registros.

Tengo un SP el cual hace una primera consulta sobre otra tabla devolviendo unos 800 registros.
Ahora bien, sobre este grupo de datos resultantes hago un barrido (for...do) y por c/u de ellos consulto sobre la tabla de los 100,000.

ej:
...

for select campoID from tb800 where campofecha between '01/05/2004' and '01/30/2004' into :vID do begin

select vresultado from sp_tabla100000 (:vID);

/* AQUI REALIZO CIERTAS OPERACIONES Y CALCULOS*/

end
...

*************** fin del SP *******************************




/**********esto es lo que tiene el otro SP************/

select campototal from tb100000 where campoID =:vID into vresultado;


Omiti algunas lineas para irme directamente sobre el problema.

Esto no me ha ayudado a optimizar el tiempo , ya que actualmente tarda unos 15 min. el ejecutar este SP.

Ya he leido y buscado en los hilos anteriores y nada me ha servido. Hago la consulta mas especifica y nada.Sigue igual.
Como puedo mejorarlo

Saludos y gracias de antemano.

cacuna
Responder Con Cita
  #2  
Antiguo 28-05-2004
celades celades is offline
No confirmado
 
Registrado: may 2003
Ubicación: Torroella de Montgrí (Girona)
Posts: 42
Poder: 0
celades Va por buen camino
Hola

No entiendo bien lo que cuentas, creo deberias explicar mejor lo que es codigo delphi i lo que es codigo BD

Pero si compo parece haces selects contra un campo id que supondria que tiene un indice o es primary key tendria que ser muy rapido a no ser 100000 la busqueda pero si solo la haces 800 y con un indice en el campo de busqueda firebird va que vuela

En fin no te puedo ayudar mas
Responder Con Cita
  #3  
Antiguo 29-05-2004
cacuna cacuna is offline
Miembro
 
Registrado: sep 2003
Posts: 54
Poder: 21
cacuna Va por buen camino
Gracias...

Muchas gracias Celades pero no habia pasado 10 min. de haber publicado este hilo cuando di con la respuesta despues de 3 dias de busqueda.

Erroneamente nunca genere indices por los campos que realizo la busqueda.

La consulta sobre la tabla sin indices duraba hasta 20 min.
La misma consulta con indices ni 10 segundos.

Gracias nuevamente por tu interes.


Cacuna
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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 15:44:23.


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