FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Recordcount no me cuenta bien
Hola!
Tengo una aplicación con Firefox 2.0 y acceso al mismo mediante dbExpress. El caso es que al arrancar (en el FormCreate) relleno un DBGrid con los datos de un IBQuery y justo tras el open() del query en un TLabel muestro el número de registro del DBGrid mediante la propiedad RecordCount del query y si hay registros me muestra un 1 haya los registros que haya. Más adelante si cambio el query y hago lo mismo ya me funciona y me muestra el valor correcto. ¿A qué se puede deber? Gracias |
#2
|
||||
|
||||
Cita:
Prueba a lanzar una consulta con COUNT. Posiblemente al abrir no se esté trayendo todos los datos y por eso no devuelve bien el Count. Además hacerlo con SQL+COUNT es más eficiente que usar RecordCount.
__________________
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
|
||||
|
||||
Cita:
__________________
...Yo naci en esta ribera del arauca vibr@d0r Soy hermano de la espuma, de la garza, de la rosa y del sol... Viva Venezuela |
#4
|
||||
|
||||
Cita:
sólo refleja el valor correcto si llegas hasta el final del conjunto de datos. Prueba a hacer un DataSet.Last antes de mostrar el valor de recordcount en el label. Aunque la sugerencia de Neftalí es mucho mas eficiente.
__________________
Progress Openedge https://abevoelker.com/progress_open...dered_harmful/ Delphi forever... |
#5
|
||||
|
||||
Cita:
En Bases de datos tipo Paradox y similares, funciona bien sin necesidad del Last.
__________________
Un poco de tu generosidad puede salvar la vida a un niño. ASÍ DE SENCILLO |
#6
|
||||
|
||||
La verdad tengo entendido q solo falla con las conexiones ADO pero por un principio logico que la conexion no trae todos los registros solo hasta qe lso necesite
__________________
...Yo naci en esta ribera del arauca vibr@d0r Soy hermano de la espuma, de la garza, de la rosa y del sol... Viva Venezuela |
#7
|
|||
|
|||
Con FireBird e IBX me fallaba, y no se por qué, pero como dice defcon1_es, poniendo DataSet.Last funciona, aunque quizás sea mejor lo que te indica Neftali.
|
#8
|
||||
|
||||
Cita:
Con una simple consulta SQL del tipo COUNT será más eficiente:
__________________
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. |
#9
|
|||
|
|||
Gracias por las respuestas. En efecto haciendo Last antes del Recordcount ya me cuenta bien los registros, la pega es que en el DBGrid se me selecciona el último registro lo que no es demasiado lógico. Asi que me quedo con el "select count" que si además es más eficiente mejor que mejor
Gracias a todos. PD: Se me fue la pinza con lo del Firefox, es lo que pasa cuando no has dormido una mierda :P |
#10
|
||||
|
||||
La diferencia entre el select count y el last es que el primero te lo devuelve el servidor, al contrario del last que obligas a l cliente a tener todos los registros para contarlos
__________________
...Yo naci en esta ribera del arauca vibr@d0r Soy hermano de la espuma, de la garza, de la rosa y del sol... Viva Venezuela |
#11
|
||||
|
||||
Cita:
Saludos |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Lo bien hecho bien parece. | marcoszorrilla | Humor | 2 | 13-03-2008 21:13:21 |
Cuenta bien! | roman | Humor | 9 | 25-04-2006 16:19:14 |
Problema con un RecordCount | Lucciano | Conexión con bases de datos | 4 | 07-04-2006 15:40:54 |
Porque no realiza bien el Cmmit o bien un ApplyUpdates(-1)? | Luis Alberto | Varios | 6 | 14-12-2005 22:44:25 |
RecordCount en Interbase | ingacg | Conexión con bases de datos | 2 | 13-01-2004 21:20:43 |
|