Bug usando componentes IBX
01/12/2005
0
Gostaria de saber se alguém pode me auxiliar com meu problema envolvendo os componentes da paleta IBExpess.
Estamos testando o ganho de perfomance usando componentes nativos ao invez de usar o BDE como tradutor.
Constatamos que realmente a conexão e execução de procedimentos é bem mais rapida, porém quando tentamos ir direto ao fim de uma tabela o programa trava e o uso de CPU vai a 100¬. Constatamos também que a medida que varremos uma tabela com mais ou menos 2000 registros, a navegação vai ficando lenta a medida que avançamos para o fim da tabela.
Testei nos seguintes modos, e o bug ocorre sempre da mesma maneira: em mais de uma versão de Windows, nas versões 5, 6 e 7 do Delphi, em computadores PIII a PIV, banco de dados Interbase ou Firebird 1.0 a 1.5, com programas feitos por nós para testes ou com os exemplos do próprio Delphi.
Gostaria de saber se alguem conhece o porque da ocorrência deste erro, bem como uma solução ou uma alternativa para ganho de perfomance usando bando de dados Interbase ou Firebird.
Antecipo agradecimentos.
Nathalia Sebben.
Nathaliasebben
Posts
01/12/2005
Edilcimar
01/12/2005
Nathaliasebben
Não estamos usando indices, somente o acesso direto a tabela.
A aplicação não está em rede. O teste é local.
Testei os componentes IBTable e IBDataSet, e usei também, os componentes IBDatabase, IBTransaction, e um Datasource.
Obrigada!
01/12/2005
Edilcimar
02/12/2005
Thomaz_prg
02/12/2005
Fabiobb
É o seguinte... não é bug do componente... é lógica...
Se você está no primeiro registro... e quer ir pro registro 10000 o que o componente faz...
Ele vai carregando cada registro do banco até achar a opção que você quer...
O certo seria tu criar um critério de seleção no teu sql...
Banco de dados hoje em dia para acesso não funcionam como as tabelas de antigamente... paradox quando tu ia para o último ele buscava perfeitamente... hoje em dia quando tu quer navegar ele vai registro por registro...
espero que tenha sido útil...
Clique aqui para fazer login e interagir na Comunidade :)