[firebase-br] Tabelas Temporárias
Fausto
fausto.s.a em uol.com.br
Ter Jul 26 06:42:12 -03 2005
Bom dia Adilson, eu também estou utilizando o FB com as mesmas
configurações que vc, eu não utilizo tabelas temporárias, pelo menos não
fisicamente, o que eu faço e creio que vc também poderia faze-lo, já
que utiliza o DBExpress, é utilizar o ClientDataset, e procedures
selecionavéis.
Fausto
Adilson B. Cápua Jr. escreveu:
>PessoALL,
>
> Estou usando Delphi 7 + DBX + FB 1.5!
> No meu projeto, tenho vários processos (uns 30) que são
>executados através de SP's que por sua vez alimentam tabelas
>temporárias no próprio banco, aos quais utilizo somente para
>exibições em alguns relatórios ou mesmo telas. Sempre que vou
>executar algum processo desse, antes faço um "DELETE FROM TABELA"
>na própria SP.
> Bom, minha dúvida é a seguinte: já li que quando um registro
>é deletado, o Firebird simplesmente apaga o mesmo, mas o espaço
>físico que esse registro utilizou fica lá, sendo que FB continua,
>vamos assim dizer, aumentando o tamanho do banco para novos registros.
>Agora imagine que vários desses processos que citei acima são
>executados diversas vezes. Estou imaginando que o banco irar crescer
>bastante, sendo que depois de um backup e restore tudo voltará ao
>seu tamanho real (alguém, por favor, me corrija se eu estiver errado).
>Portanto, como posso resolver essa situação? Já pensei em usar tabelas
>em memória (tenho até alguns componentes para isso), mas creio que
>irei "matar" toda a performance do programa, visto que os processos
>são executados dentro de SP's. As mesmas podem ser complexas, como
>uma que tenho que calcula a curva ABC de estoque. Foi toda feita
>através de select's e cálculos dentro do próprio banco. A velocidade
>da mesma para execução é fantástica! Rapidinho ela fica pronta para
>análise! Muitas vezes, preciso checar se determinado registro existe
>na tabela para poder inserir (caso não exista) ou atualizar (caso o
>mesmo já exista) e nem imagino como fazer utilizando tabelas
>temporárias na aplicação.
> Como é que vocês tratam casos como esse?
> Existe alguma maneira mais "elegante" de fazer isso?
> Qualquer idéia, dica ou macete é muito bem vindo!!!
>
>Forte Abraço!
>
>+---------------------------------------+
> Adilson Bragança Cápua Jr.
> Linhares - ES Brasil
>
> mailto : juniorcapua em yahoo.com.br
> juniorcapua em gmail.com
> Mobile : abcjr em oi.com.br
> Messenger : juniorcapua em hotmail.com
> Blogger : www.dellas.rg3.net
>+---------------------------------------+
> Save a tree! Send an e-mail!
>
>
>
>
>
>_______________________________________________________
>Yahoo! Acesso Grátis - Internet rápida e grátis.
>Instale o discador agora! http://br.acesso.yahoo.com/
>
>
>______________________________________________
>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
>
>
>
>
Mais detalhes sobre a lista de discussão lista