FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Obtención de Array de un Componente de Base de datos
Buen día primero expondré mi caso:
Tengo por medio de Firebird 2.5 una BD la cual tiene 5 tablas de momento (Config, EA, SA, ED, SD) en las últimas 4 es en donde se concentra la mayor información, en esas tablas se tienen los mismos campos (Indice, Valor, Fecha_Hora, Status). Mi problema es el siguiente: Al realizar la lectura de la base de datos lo hago con un TFDQuery para posteriormente vaciar los resultados en una Collection, el detalle que tengo es que al ser una gran cantidad de datos conlleva un tiempo considerable, me gustaría saber si existe una forma de poder obtener todos los datos de la Query o de algún otro complemento de Delphi como si fuera una Matriz o que otra opción sería viable para este tipo de casos. Sin más por el momento espero me puedan ayudar a comprender y entender mejor el tema para poder darle solución. |
#2
|
||||
|
||||
Eso pensamos nosotros, no se entiende lo que explicas.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#3
|
|||
|
|||
Bueno esa "matriz" la tienes ya en el componente FDQuery (columnas-campo x filas-registro), puedes intentar optimizar con cursores unidireccionales y propiedades de la transacción que se utiliza para traerte los datos, que sea solo de lectura.
|
#4
|
||||
|
||||
1- ¿Por qué vuelcas el contenido de la consulta en un collection?
2- Como te dice WHILENOTEOF, Ya en el Query tienes los datos listados 3- ¿Por qué vuelcas el contenido de la consulta en un collection? 4- ¿¡Por qué!?
__________________
Buena caza y buen remar... http://mivaler.blogspot.com |
#5
|
|||
|
|||
A las preguntas que hizo movorack yo agregaría:
- ¿ Cuantos registros son esa gran cantidad de datos ? - ¿ Cuanto tiempo, en segundos o minutos, es un tiempo considerable? Es posible que el problema no este del lado de la aplicación sino del lado de la base de datos. |
#6
|
||||
|
||||
incluiria tambien
la forma en que se esta conectando, usas ADO ? ODBC ? alguna otra forma? aunque viendo el componente que usas, lo haces utilizando FireDAC en ese caso deberias colocar tambien la cadena con la cual estas "jalando" los datos de esas tablas creeme hay una enorme diferencia entre y
se supone que este tipo de base de datos es mucho mas potente y rapido que las tablas convencionales
__________________
Dulce Regalo que Satanas manda para mi..... |
#7
|
|||
|
|||
Cita:
R1.- La paso a una Collection para mandarsela a un TChart que se va a encargar de graficar los cambios. R2.- Si el Query ya me trae los datos pero como quería pasar esos datos a la TChar por eso los mando a la Collection. |
#8
|
|||
|
|||
Cita:
1- Los registros son variables, es un SCADA que registra nuevos valores cada 5 o 10 seg, y además la consulta que se hace es dependiendo lo que el usuario quiera ver, si quiere ver los cambios que han surgido en 2 hrs, 1 día o 5 días. 2- Bueno por lo que he medido para 2 hrs o 2 días se tarda lo mismo, seria 1 min 34 seg, 34 seg se lleva trayendo datos y pasarlos a la Collection y lo demás en pintarlo a la TChart. Yo tengo el complemento TChart Lite, ayer estaba yo viendo que con la TChart Pro se podía jalar datos directos desde un Query me parece, no se si ese podría ser mi solución. |
#9
|
|||
|
|||
Cita:
Bueno lo que pasa es que los datos solo los jalo de 1 tabla: Cadena := System.SysUtils.Format ('Select Fecha_Hora, Valor, Status From %s Where ((Indice = %d) And (Fecha_Hora between %g and %g))', [VarType, AVarId, DateTime1, DateTime2]); En el primer %s va el nombre de la tabla del cual jalara los datos, son 4 posibles tablas de momento pero todas tienen los mismos campos, entonces no jalo datos de tablas combinadas. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Coneccion y obtencion de datos de una api rest | lbidi | Internet | 3 | 03-03-2017 20:57:35 |
Busco componente Grid soportando obtención/asignación total de datos mediante texto | rolandoj | OOP | 9 | 11-10-2008 05:40:51 |
obtencion de datos de un grafico | mjjj | Gráficos | 1 | 26-03-2007 23:22:20 |
Obtencion de datos | Alejandro73 | SQL | 4 | 28-12-2006 21:17:10 |
Como guardar una array en una base datos? | ciscu | Varios | 3 | 11-02-2004 10:27:49 |
|