[firebase-br] Muito lento o ClientDataSet.ApplyUpdates(0) no Firebird 1.5...

fuzari em task.com.br fuzari em task.com.br
Qua Fev 9 13:23:16 -03 2005


Caro Adelson, 

Vc está abrindo a tabela inteira no banco ou chamando algumas linhas via SQL 
puro. De qualquer forma, com o uso do DBX vc deve evitar algumas armadilhas. 
Qdo vc abre a tabela, todas as linhas são carregadas no cliente. Isso porque 
as linhas são bufferizadas. Para evitar isso, o componente ClientDataSet1 
possui uma propriedade PacketRecord, cujo valor default é -1. Altere este 
valor para, digamos, 100. Este componente bufferizará os primeiros 100 
registros da tabela, dando a impressão que a tabela inteira foi aberta 
instantaneamente. Faça um teste com o DBGrid. Vc notará que a barra de 
rolagem vai alterando na medida em que vc posiciona o ponteiro no final da 
tabela. 

sds 

Fuzari. 


> Caríssimo Carlos, 
> 
> Respeito muito sua palavra, aliás, quem poderia contradizê-lo sobre 
> Firebird aqui no Brasil ! ! !
> Mas, o caso é, mesmo em um banco com uma tabela com 5 registros e mais 
> nada , ocorre o mesmo problema, lentidão no 
> ClientDataSet.ApplyUpdates(0).... 
> 
> Minha aplicação é CLX e uso os componentes dbExpress:
> DBConnection + SQLDataset + DataSetProvider + ClientDataSet + DataSource 
> 
> Se no DBConnection uso a DLL do Interbase (GDS32.DLL) em VendorLib 
> funciona a uma velocidade razoavelmente e apresenta com certa constância o 
> erro:
> "Unable to complete network request to host "nome-do-host".Failed to 
> establish a connection.", 
> 
> mas se uso a DLL do Firebird (FBCLIENT.DLL) funciona sem erros, mas "a 
> passos de formiga"... 
> 
> Uso nas maquinas o firewall ZoneAlarm, mas libero as portas 3050 em TCP e 
> UDP... 
> 
> Carlão, se não for o banco são os componentes, por que não precisa nem 
> lógica de programação para se trabalhar com essa quantidade de 
> registros... 
> 
> Abraços,                     
> 
> Adelson. 
> 
> 
> Carlos H. Cantu wrote: 
> 
>> 11MB? Isso é muito pouco. Deve ter algum erro da lógica de programação
>> que vc está usando.... 
>> 
>> []s
>> Cantu
>> http://www.warmboot.com.br
>> FireBase - http://www.FireBase.com.br 
>> 
>> AL> Olá PessoALL.... 
>> 
>> AL> Alguem poderia me ajudar nessa "parada dura" que está me
>> AL> deixando muito preocupado em relação ao uso do Firebird...  
>> 
>> AL> Enquanto o BD. estava "pequeno" minha aplicação rodava que
>> AL> era "uma beleza"... com acesso bi-direcional aos cadastros e
>> AL> pesquisas e etc.... utilizando Delphi 7 e dbExpress + FB 1.5 e RH
>> AL> 9 .... mas agora que o banco creceu um pouco (+/- 11MB) tá uma
>> AL> lastima.... e o "gargalo" pude perceber ser justamente no
>> AL> ApplyUpdates...  
>> 
>> AL> Tabelas com poucos registros ele simplesmente congela a
>> AL> aplicação por uns 15 segundos a cada
>> AL> ClientDataSet.ApplyUpdates(0)... 
>> 
>> AL> Alguem poderia me ajudar.... 
>> 
>> AL> Grato,                                               Adelson. 
>> 
>>  
>> 
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>> Para editar sua configuração na lista, use o endereço 
>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br 
>> 
>>   
>> 
>  
> 
>  
> 
> -- 
> No virus found in this outgoing message.
> Checked by AVG Anti-Virus.
> Version: 7.0.300 / Virus Database: 265.8.6 - Release Date: 7/2/2005 
> 
>  
> 
> 
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço 
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
 





Mais detalhes sobre a lista de discussão lista