[firebase-br] Banco de dados lento

Fagner Araujo fagaraujo em yahoo.com.br
Ter Dez 27 11:51:20 -03 2005


Se você ainda não resolveu seu problema, siga o que o Demitre falou, e  coloque pelo menos um chave primária na sua tabela. Mesmo assim se você  continuar a utilizar o IBTable você ainda terá problema de velocidade.  Então troque esse componente pelo IBQuery. A mudança não é muito grande  (se for feita em Delphi, o que é o caso):
      1 - Troque os componentes IBTable por IBQuery.
      2 - Na propriedade SQL do IBQuery coloque um código parecido com  SELECT * FROM <TABELA> [ WHERE <CAMPO> = <VALOR> ]
      3 - Coloque a propriedade do IBQuery CachedUpdates para True e adicione um componente IBUpdateSQL;
      4 - Coloque a propriedade UpdateObject do IBQuery apontando para IBUpdateSQL que você adicionou. 
      5 - Dé um duplo click no IBUpdateSQL e marque os campos chaves no List Key Field e depois pressione o botão Generate SQL.
      6 - Adicione aos eventos AfterDelete e AfterPost do IBQuery o seguinte código: IBDatabase.ApplyUpdates([DataSet]);
      7 - Em algum ponto da aplicação lembre-se de abrir a Query com IBQuery.Open semelhante você fazia com IBTable;
    
    Com isso você fez todas as mudanças de IBTable para IBQuery e melhorará em muito seu problema de lentidão.
    Esse é apenas uma técnica de acesso a dados chamada Cached Update você  poderá optar por outras técnicas. Para maiores informações sobre Cached  Update você poderá consultar algum manual da Borland sobre o assunto ou  procurar qualquer documento na Internet sobre o tema.
    Qualquer dúvida que você precise é só me contactar que posso lhe passar maiores detalhes sobre o esquema.
    
    Fagner Araújo.
         
  Leandro Carbonera <leacarbonera2 em yahoo.com.br> escreveu:  Salve lista..........

Tenho um banco de dados interbase com uma tabela de mercadorias com 30.500
registros, rodando num pentium 4 com 512 mb.
Eu utilizo o componente IBTable para acesso a essa tabela, mas esta ficando
muito lento.

Minha duvida é a seguinte, será que as tabelas estão muito cheias e por isso
o sistema esta ficando lento, pois quando dou um refresh na tabela e sistema
tambem pesa bastante........

Alguem já passou por uma situação dessa?????

OBS: Minha tabela de mercadorias não possui chave primaria..... eu controlo
isso pela aplicação



Att.

Leandro Carbonera
Suporte Técnico - RBR Informática

Fone: 54 343 1788
leacarbonera em rbrinformatica.com.br
www.rbrinformatica.com.br


 

 
  
_______________________________________________________ 
Yahoo! doce lar. Faça do Yahoo! sua homepage. 
http://br.yahoo.com/homepageset.html 



______________________________________________
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
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
  


		
---------------------------------
 Yahoo! doce lar. Faça do Yahoo! sua homepage.


Mais detalhes sobre a lista de discussão lista