ASP - Intervalos de registros

 
Vista:

Intervalos de registros

Publicado por Antonio (15 intervenciones) el 23/06/2001 01:16:19
Estoy atacando al MS-SQL 7 desde ASP y no se como hacer para que me devuelva un intervalo de registros, por ejemplo que me devuelva del registro 5 hasta el registro 10. Se cojer los 5 primeros con lo del TOP: SELECT TOP 5 * FROM .... pero no se ir cogiendo los subgrupos siguientes. A ver si alguien me ayuda. Muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Intervalos de registros

Publicado por Claudio Romero (12 intervenciones) el 23/06/2001 02:36:50
Por lo que dices, imagino que deseas mostrar en una pagina ASP el resultado de una consulta SQL, en forma paginada.
En la primera pagina, mostrar los registros del 1 al N.
En la segunda pagina, los registros de N+1 hasta N+Y.
Y asi sucesivamente.

La mejor forma de hacerlo no es sobrecargando al servidor SQL con consultas cada vez que un usuario quiere cambiar de pagina.
Ademas, piensa que ese sitio es consultado por cientos (o miles) de usuarios.
Imagina lo que le pasa al server si, digamos, 100 usuarios quieren cambiar de pagina al mismo tiempo.
Nada lindo.

La solucion a esto es ejecutar la consulta una sola vez, utilizando un cursor del lado del cliente usando ADO.
La pagina actual y la cantidad de registros que deseas mostrar en una pagina puedes establecerla mediante la propiedad "PageSize" de ADO.

Saludos.

Claudio Romero.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Intervalos de registros

Publicado por Antonio (15 intervenciones) el 23/06/2001 13:21:12
Claudio,

Exactamente no se a que te refieres pues soy nuevo en ASP+SQL, se mas o menos lo que quieres decir pero no se exactamente como crear el objeto ADO, imagino que sera la conexion con el SQL ni que objeto tiene esa propiedad. De todos modos... creo que lo que quieres decir es que un cursor apunte a los registros de la tabla y que se vayan incrementando los punteros a medida que cambio de PAGE, no?? de esta manera que el interprete de SQL no procese mas consultas.... Te estaria muy agradecido si me pones alguna linea de codigo que defina este objeto y como cambiar de pagina activa.
Muchas gracias por adelantado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Intervalos de registros

Publicado por dmarm (117 intervenciones) el 25/06/2001 10:56:06
el objeto ado se llama tambien recordset, es donde se almacenan los registros que te ha devuelto la consulta. este recordset es el que tiene la propiedad.

un ejemplo de declaracion es:
Set rsDatos1 = Server.CreateObject("ADODB.Recordset")

mira la pagina http://asp.programacion.net/taller/paginacion_asp.php
te resultara muy util
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar