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

Adelson R. Longo adelsonlongo em gmail.com
Qua Fev 9 15:17:57 -03 2005


Sr. Fuzari,

Sua idéia me pareceu muito boa, entretanto, quando fui testá-la me 
deparei com o seguinte problema, em alguns Forms tenho tabelas 
relacionadas (master-detail), "manja", quando voce relaciona em 
ClientDataSet.MasterFields....
e atribuindo um valor para o ClientDataSet.PacketRecord quando se faz um 
ClientDataSet.Refresh elas perdem o relacionamento ? ! ? ! nem sei bem 
por que, mas perde...

Tem outra "tirada" na manga ?

Grato,                               Adelson.

fuzari em task.com.br wrote:

> 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
>
>
>
>
> ______________________________________________
> 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







Mais detalhes sobre a lista de discussão lista