Foros del Web » Programando para Internet » ASP Clásico »

Optimizar paginacion grande

Estas en el tema de Optimizar paginacion grande en el foro de ASP Clásico en Foros del Web. Hola, tengo un problema grande al tener que paginar, es decir se me solicita optimizar la paginacion siendo que hay mas de 20000 registros y ...
  #1 (permalink)  
Antiguo 13/06/2003, 20:09
 
Fecha de Ingreso: diciembre-2002
Mensajes: 473
Antigüedad: 22 años, 4 meses
Puntos: 0
Optimizar paginacion grande

Hola, tengo un problema grande al tener que paginar, es decir se me solicita optimizar la paginacion siendo que hay mas de 20000 registros y cada vez que pagino estoy cargando todo el lote. Hay alguna forma de optimizar para qeu se vayan cargando por lotes o algo asi.Yo habia pensado en algo en sql somo select top 10 pero no veo ningun ejemplo y no si andara.
Desde ya mil gracias la ayuda!

Esto es loq ue hago cada vez que le doy a Siguiente o anterior:

'Abro Recordset con datos
sql = "SELECT * FROM tabla ORDER BY nombre;"
'Set rsdatos = AbrirSQLDynamic(conDB , sql )
Set rsdatos = Server.CreateObject("ADODB.Recordset")
rsdatos.Open sql, conDB,3,1


'Paginacion
rsdatos.PageSize = mostrar
rsdatos.CacheSize = mostrar
dim totalrec
totalrec = rsdatos.recordcount
cant_paginas = rsdatos.PageCount
  #2 (permalink)  
Antiguo 14/06/2003, 02:14
Avatar de Fr@Nc3$c0  
Fecha de Ingreso: abril-2002
Ubicación: Barcelona (Spain)
Mensajes: 710
Antigüedad: 23 años
Puntos: 1
Hola!

En este enlace se explica la paginacion de un recordset, pudiendo así mostrar de 10 en 10 o de X en X, con diferentes links para avanzar, retroceder, etc:

http://www.aspfacil.com/articulos/040401.asp
http://www.aspfacil.com/articulos/paginar.asp

Esto es algo más avanzado, pero mucho mucho mas optimo:
http://www.aspfacil.com/articulos/110201.asp


Saludos!
__________________
Francesc Mula Calleja
Hay mucho por ver todavía...
  #3 (permalink)  
Antiguo 14/06/2003, 22:00
 
Fecha de Ingreso: mayo-2003
Ubicación: Montevideo - Uruguay
Mensajes: 37
Antigüedad: 21 años, 11 meses
Puntos: 0
Para ello puedes utilizar la propiedad MaxRecords, estaria bueno en tu caso usar un if (cantidad_registros) > tope then y ahi cortar
el resultado a un valor fijo como por ejemplo:

rs.MaxRecords = 1000

Te paso esta dir como referencia
http://msdn.microsoft.com/library/de...mdapro01_1.asp

Suerte,
Saludos
nICO
  #4 (permalink)  
Antiguo 15/06/2003, 00:25
 
Fecha de Ingreso: diciembre-2002
Mensajes: 473
Antigüedad: 22 años, 4 meses
Puntos: 0
De acuerdo gracias

muchas gracias a los dos , si alguno tiene otro link bienvenido sea pero voy a verificar los que me pasaron.
un abrazo grande!
tico

Una duda con lod e Nico , al fijar un tope, por ej, 1000 registros no estoy excluyendo otros si por ejemplo la consulta me trae 10000 o1500.Vale decir,aca estoy trayendo siempre los 10000 registros y ahi tarda.
Un saludo.
Tico
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:15.