[firebase-br] IBO como trabalhar

Andrei Luís compuvale.software em gmail.com
Qua Ago 2 15:25:32 -03 2006


Cássio,

Retirado do help do IBObjects:

FetchWholeRows

When True, this setting causes the query to be processed like the
Delphi TQuery, to fetch whole rows instead of splitting the buffer to
get the keys and then the individual rows as required.

Applies to
TIB_Query

Declaration
property FetchWholeRows: boolean;

Description


Set FetchWholeRows to False if you have to deal with a very large
dataset (both rows and cols) and the user wants to scroll around it at
random and do refreshes, etc. Because scrolling at random means
calling Locate(), doing IncSearches, etc., a small key, such as a
single-column integer, is desirable to make this perform effectively.

A query that is a child in a KeyLinks relationship is also a candidate
for split buffering if it has a large number of rows. This way, when
the parent asks it to seek, it will only have to fetch keys to get to
the desired record if it is not already in the buffer.

The down-side to this setting is that, with three cursors instead of
one, the rows are not able to be batched up into a single network
packet. Instead, they come one at a time which could possibly end up
being less efficient if, eventually, the whole dataset has to be
fetched.

Normally, it is better to leave FetchWholeRows set to True so that IB
can batch rows together in a packet for more efficient transmission
across the wire. Arrange for the user to make use of the search mode,
rather than scroll around. Entering search criteria is more accurate
for locating target rows and offloads work to the server more
efficiently.

The rule of thumb is this. If you expect to fetch more than one-third
of the dataset, keep FetchWholeRows at the default setting of True.
Only set it to False if you have a small key and a wide row and will
only be peeking at small slices of the dataset.

FetchWholeRows must be True when selecting from a stored procedure and
will be ignored if set to False.

[]
Andrei


2006/8/2, Cássio <pajolista em gmail.com>:
> ola pessoal boa tarde eu estou com o seguinte problema .. achei muito
> material bacana sobre o ibo na internet e vi que ele é bem bacana de se
> trabalhar . mas eu estou com a a seguinte duvida .. há alguma maneira de
> configurar as queries para que me resultem apenas uma quantidadade pequena
> de registros e conforme a necessidade ela vá buscando o restante dos
> registros no servidor .. do tipo eu deixo dentro da minha query na
> propriedade sql ('select * from clientes ') , esta tabela de clientes tem 10
> 000 registros , e eu gostaria de descarregar dela apenas 500 registros e
> conforme o usuario navega no ibodbgrid ele vai tendo acesso ao restante dos
> registros ... qual seria esssa propriedade e como configura-la ?? , ou eu
> tenho mesmo que limitar ao maximo a quantidade de informação  buscada do
> servidor do tipo  sql ('select * from clientes  where id = 1 ')  ???? bem eh
> isso ai Obrigado ...
>




Mais detalhes sobre a lista de discussão lista