Paginar a query

Firebird

15/07/2004

Ola a todos.

Alguem aqui ja teve a necessidade de fazer o seguinte:

Imeginem um arquivo com 10.000 registros
voce cria um sp que faca o seguinte:
sp_pagina(x,y)

onde x=numero de registros a retornar
onde y=numero da pagina

Exemplo:

Arquivo

(row) Nome Endereco
1 a a
2 b b
3 c c
4 d d
5 e e
6 f f
7 g g
8 h h
9 i i
10 j j
11 k k
12 l l
13 m m
14 n n
15 o o

vc faz a chamada da sp: SP_PAGINA(2,3)
onde 2=numero de registros a retornar
onde 3=numero da pagina

de acordo com os parametros passados os dados sao vistos (virtualmente) desta forma:

(row) Nome Endereco
---> Pagina 1
1 a a
2 b b
---> Pagina 2
3 c c
4 d d
---> Pagina 3
5 e e
6 f f
---> Pagina 4
7 g g
8 h h
---> Pagina 5
9 i i
10 j j
---> Pagina 6
11 k k
12 l l
---> Pagina 7
13 m m
14 n n
---> Pagina 8
15 o o


Sera retornado
(row) Nome Endereco
5 e e
6 f f


Outro exemplo:

vc faz a chamada da sp: SP_PAGINA(5,2)
onde 2=numero de registros a retornar
onde 3=numero da pagina

Sera retornado
(row) Nome Endereco
6 f f
7 g g
8 h h
9 i i
10 j j

de acordo com os parametros passados os dados sao vistos (virtualmente) desta forma:

(row) Nome Endereco
---> Pagina 1
1 a a
2 b b
3 c c
4 d d
5 e e
---> Pagina 2
6 f f
7 g g
8 h h
9 i i
10 j j
---> Pagina 3
11 k k
12 l l
13 m m
14 n n
15 o o
---> Pagina 4


Abraco a todos
Carlos Junior


Carlosc.jr

Carlosc.jr

Curtidas 0

Respostas

Sandra

Sandra

15/07/2004

Tópico em duplicidade!
http://delphiforum.icft.com.br/forum/viewtopic.php?t=48710

Por favor, releia as [url=http://delphiforum.icft.com.br/forum/viewtopic.php?t=6689]Regras de Conduta[/url] do fórum.


GOSTEI 0
POSTAR