Paginacion de Recordset

18/11/2008 - 16:51 por Waldo | Informe spam
Hola gente, uso SQL 2000 tengo que realizar una paginacion de un listado de
eventos.
Segun sus experiencias que me recomiendan...

Hacer la paginacion con procedimientos almacenados, pasando un

SELECT TOP cant_reg WHERE ID_ev > X y ID_ev < Y

O usar la paginacion directamente en el recordset ADO, usando PageSize,
CacheSize y PageCount

La verdad no le tengo mucha fe al recordset, si por ej la consulta devuelve
5000 ev, y mi pagina es de 100 ev, por la red solo viajaran 100 ev ?


Saludos

Waldo

Preguntas similare

Leer las respuestas

#1 Carlos Sacristan
18/11/2008 - 17:29 | Informe spam
Yo me fiaría más de los procedimientos almacenados que no de esas
propiedades...


Un saludo
-
www.navento.com
Servicios de Localización GPS


"Waldo" wrote:

Hola gente, uso SQL 2000 tengo que realizar una paginacion de un listado de
eventos.
Segun sus experiencias que me recomiendan...

Hacer la paginacion con procedimientos almacenados, pasando un

SELECT TOP cant_reg WHERE ID_ev > X y ID_ev < Y

O usar la paginacion directamente en el recordset ADO, usando PageSize,
CacheSize y PageCount

La verdad no le tengo mucha fe al recordset, si por ej la consulta devuelve
5000 ev, y mi pagina es de 100 ev, por la red solo viajaran 100 ev ?


Saludos

Waldo



Respuesta Responder a este mensaje
#2 Alfredo Novoa
18/11/2008 - 17:38 | Informe spam
El Tue, 18 Nov 2008 13:51:56 -0200, Waldo escribió:

Hacer la paginacion con procedimientos almacenados, pasando un

SELECT TOP cant_reg WHERE ID_ev > X y ID_ev < Y



Puedes crear una funcion que te devuelva una consulta de este estilo y te
ahorras el tener que crear varios procedimientos almacenados por cada tabla
y vista.

O usar la paginacion directamente en el recordset ADO, usando PageSize,
CacheSize y PageCount



Lo malo de esto es que supongo que el SQL Server te materializa toda la
consulta aunque vayas a traerte unas pocas filas.


Saludos
Respuesta Responder a este mensaje
#3 Gustavo Larriera (MVP)
18/11/2008 - 18:29 | Informe spam
Personalmente prefiero paginar del lado del servidor.

Si quiere algunas ideas de cómo se podía hacer en el viejo y querido SQL
Server 2000, puede mirar este artículo:

Efficient and DYNAMIC Server-Side Paging with SQL Server 2000
http://weblogs.sqlteam.com/jeffs/ar.../1085.aspx

Le recomiendo leer todos los comentarios que siguen al artículo.

Gustavo Larriera, Microsoft MVP
http://www.linkedin.com/in/gustavolarriera
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Waldo" wrote:

Hola gente, uso SQL 2000 tengo que realizar una paginacion de un listado de
eventos.
Segun sus experiencias que me recomiendan...

Hacer la paginacion con procedimientos almacenados, pasando un

SELECT TOP cant_reg WHERE ID_ev > X y ID_ev < Y

O usar la paginacion directamente en el recordset ADO, usando PageSize,
CacheSize y PageCount

La verdad no le tengo mucha fe al recordset, si por ej la consulta devuelve
5000 ev, y mi pagina es de 100 ev, por la red solo viajaran 100 ev ?


Saludos

Waldo



Respuesta Responder a este mensaje
#4 Waldo
18/11/2008 - 19:34 | Informe spam
Gustavo, Carlos y Alfredo, gracias por responder,

Si, esa es la duda que tengo, supongo que para paginar en el Rst, primero el
servidor debe entregar todo el conjunto de resultados.

Gustavo, ya habia pasado por esa pagina, no lei todos los comentarios, pero
veo que usa SET ROWCOUNT, que tengo entendido que no es muy recomendado su
uso.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida