Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MS SQL Server
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-08-2006
thawulf thawulf is offline
Registrado
 
Registrado: ago 2006
Posts: 3
Poder: 0
thawulf Va por buen camino
Smile Consultas SQL muy pesadas al abrir la aplicación

Hola a todos. Soy nuevo en este foro.

Os expongo mi problema. Estoy haciendo una aplicación que ataca una BD SQL Server 2000. Tengo una serie de tablas con muchos registros que tengo que cargar al comienzo de la aplicación ya que la primera ventana que sale es una lista de articulos al estilo Excel, para que el usuario pueda modificar precios, pesos, cantidades etc.

Mi problema es que hago un select de toda la tabla y claro ... la aplicación se eterniza al cargar.

Mi pregunta es: ¿como puedo hacer para que no me traiga todos los registros y pagine en un dbgrid? Es decir, que me traiga solo por ejemplo 50 registros y cuando el usuario haga scroll en el dbgrid vaya trayendo según necesidades.

Utilizo ADOQuerys.

Otra pregunta: ¿Hay manera de que si hago un post o un delete se refresque automáticamente la query sin necesidad de hacer un "refresh"?

Muy agradecido de antemano.
Responder Con Cita
  #2  
Antiguo 21-08-2006
Avatar de Bicho
[Bicho] Bicho is offline
Miembro Premium
 
Registrado: jul 2003
Ubicación: Inca - Mallorca
Posts: 1.776
Poder: 22
Bicho Va por buen camino
Hola, no he trabajado nunca con SQL Server, pero puedes probar con la primera select ha hacer algo así:

Código SQL [-]
select TOP 50 from tabla .... -- y las condiciones de la select
Eso te devolverá los 50 primeros registro de la consulta.

Respecto a tú segunda pregunta, no tengo respuesta, a bote pronto te diria que no hay otra manera, pero pueda que haya otra solucion y que alguien te la de.

Saludos
Responder Con Cita
  #3  
Antiguo 25-08-2006
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 24
ContraVeneno Va por buen camino
Otra solución podría ser que no se mostrara todos los campos, si no solo los necesarios. Es decir, en lugar de hacer un Select * sería traerse solo los campos necesarios.

La pregunta que yo me haría sería:
¿realmente es necesario mostrar todos los registros de entrada?

En un proyecto pasado, no mostrabamos la lista porque eran demasiados artículos, mas o menos el problema que tu tienes. Y lo que decidimos hacer, fue que no se mostrara una lista. Si no mostrar un formulario con los campos de la tabla y el primer campo era el código del artículo. El usuario buscaba el artículo que deseaba modificar y le mostrabamos la información solo de ese artículo.

En pocas palabras, mostrabamos un artículo a la vez.

En la pantalla de buscar era donde sí mostrabamos toda la lista, pero utilizando las respectivas condiciones en la cláusula where, y seleccionando solo el código, el nombre y alguno que otro dato importante de cada artículo.
__________________

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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Abrir Oultook desde mi aplicacion federiconqn21 Varios 1 15-06-2006 19:40:23
Abrir una aplicacion con un TButton Drake C++ Builder 18 10-01-2006 16:28:43
Opendialog abrir aplicacion!!! liz_hilton OOP 2 10-05-2005 17:41:32
abrir archivo web desde aplicacion vetustas Internet 5 16-12-2003 00:02:48
Abrir navegador desde mi aplicacion pampitasnowman Internet 1 28-11-2003 15:06:44


La franja horaria es GMT +2. Ahora son las 23:08:51.


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