FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Aceleran las consultas los indices en Paradox?
Hola amigos del foro. Estoy realizando una apliacacion con tablas Paradox, las cuales jalo de la red y algunas son unas tablas con registros que sobrepasan los 25000 registros, y resulta muy lenta la consulta.
Lo que quiero saber en que modo me ayudaria el crear indices en dichas tablas me ayudaria acelerar de algun modo mis consultas. Otra duda, los creo desde el Database Desktop pero como lo puedo utiizar desde codigo el indice definido, creo todo desde codigo, incluso mis TTables y Tquerys. Gracias anticipadas. |
#2
|
||||
|
||||
Normalmente los índices aceleran las consultas y ralentizan, aunque poco las inserciones/modificaciones/borrados.
Aunque en tu caso y por los registros que comentas, el problema no debe ser la consulta en sí, sino el número de registros que estás recuperando a través de la red y eso no se soventará por muchos índices que coloques. Te recomiendo que utilices filtros para minimizar el tráfico de información, ya que posiblemente ese es el problema.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#3
|
||||
|
||||
Gracias por responder Neftali, pero me gustaria saber como soluciono lo de emplear indices creados por codigo, creo que probare a ver como ve va.
Espero tus comentarios. Gracias. |
#4
|
||||
|
||||
A lo que te comenta el compañero Neftalí, quiero añadir que según mis pruebas en Paradox las consultas no utilizan los índices, de tal manera que he realizado pruebas con una tabla con y sin índices y las consultas invertían el mismo tiempo.
Si trabajas en red, hagas lo que hagas te bajarás la tabla entera, aunque sea filtrada, por lo tanto los tiempos de respuesta no son buenos a partir 350.000 Registros, este es el problema de rendimiento que tienen las tablas que no son de tipo cliente/Servidor. Y para finalizar comentar que 25.000 registros en cualquier equipo de hoy no son una cantidad que ocasione ningún problema hasta unos 200.000 los vas a manipular sin ningún problema. El resto ya te ha indicado mi compañero Neftalí. Un Saludo.
__________________
Guía de Estilo de los Foros Cita:
|
#5
|
||||
|
||||
Gracias a ambos por sus comentarios, bueno no es mucho el tiempo de respuesta en la mayoria de casos, pero esto dependera del tamaño de la tabla la cual puede ir en aumento, bueno para mi caso pongo un Progresbar para decir al usuario de alguna manera "Se esta proceando su pedido", esto cuando utilizo algun tipo de bucle que me permita cuantificar el tiempo de repuesta, pero en el caso de realizar una consulta con sentencias SQL, como haria paar presentar un Progressbar, ya que esta se pinta una vez mostrada en la grilla los registros y
no durante el proceso de la consulta, tiene que ser un progressbar ya que hay varios procesos que empleo el progressbar de esa manera. Espero sus comentarios. |
#6
|
|||
|
|||
"Form1.refresh" cada vez que actualizás el progress?
|
|
|
|