Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

FabianoSouza

Paginação com getrows x recordset

Recommended Posts

Estou pesquisando bastante sobre o assunto aqui no fórum.

Vi este código http://forum.imasters.com.br/topic/118864-paginacao-com-getrows/ e achei muito útil para atender minha necessidade: uma paginação usando a boa prática do recordset desconectado.

 

Minha dúvida é.

 

É realmente vantajoso trazer todo o conteúdo de uma tabela de uma só vez para navegar pelos seus registros?

Imagina uma tabela com 1 milhão de registros e o usuário lerá apenas 10 registros por página. Aonde está a vantagem nisso?

 

Num recordset "trandicional" você trará apenas a quantidade de dados requisitados pelo usuário, 10 por exemplo.

 

Queria uma ajuda dos colegas para entender melhor isso antes de começar criar minha paginação com getrows.

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

vc pode usar a técnica de recordsets desconectados

Compartilhar este post


Link para o post
Compartilhar em outros sites

xanburzum, como falei acima, não consigo entender a lógica dessa técnica e queria esclarecimentos para entender o conceito.

Como falei, imagina uma base com 1, 2 ou milhões de registros. A página executa um select com tudo isso de registros, coloca num array e fica na memória no server, certo?

 

Aí a página do cliente vai navegando de 20 em 20 (por exemplo) por esses 1, 2 ou 3 milhões de registros.

Creio que só para fazer a consulta vai levar quase 10 segundos (claro depende de vários fatores, eu sei).

 

 

Já num recordset tradicional a consulta trará a quantidade de registros solicitados pelo cliente, 20 por exemplo.

Sendo bem mais rápida a resposta.

 

 

O que quero entender é por quê ainda assim é melhor usar getrows.

Compartilhar este post


Link para o post
Compartilhar em outros sites

A principal vantagem dele, é manipular os dados do banco de dados, sem estar conectado. Se o site tiver muitos e muitos acessos ao banco de dados, qualquer código que não fique conectando ao banco de dados existe um ganho de performance .Agora se você faz uma consulta, que retorna muitos registros. Isso faria a pagina ficar carregada, em muitos casos faz a paginação anteriormente ao GetRows, só busca no Banco de Dados o intervalo estipulado, ai tanto faz usar RecordSet ou GetRows, pois o numero de dados é relativamente baixo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.