[firebase-br] Como utilizar SchemaCacheDir no componente IBODatabase?

RedDevil reddevil em reddevil.eti.br
Seg Maio 30 23:51:57 -03 2005


ola Luciana,

> Preciso utilizar o SchemaCacheDir para melhorar a performance do meu programa, mas quando preencho esta propriedade no IBOdatabase o programa me mostra a mensagem "Tabela desconhecida IBO$Schema_Version"
> 
> Alguém pode me ajuda?

eu nunca usei isso ae, mas pelo que eu peguei do principio da coisa no
que diz respeito ao lance, no help do IBObjects e em uma resposta que a
Helen (a dita cuja do The Firebird Book...;o) deu para um cara na lista
IBO Support, eu tenho boas e mas noticias para voce...
;o)

como de praxe, vamos começar com a ma noticia... esta seria que nao eh
possivel usar essa propriedade (SchemaCacheDir) no componente
IBODatabase, uma vez que ela eh do componente IB_Connection (e muito
provavelmente eu estou escrevendo besteira, uma vez que o componente
IBODatabase trata-se do mesmo componente IB_Connection adaptado para
compatibilidade com o TDataset...;o).

mas, por via das duvidas, eu te aconselho a substituir na tua aplicaçao
o componente IBODatabase por um componente IB_Connection, que o
principio da coisa sera o mesmo, tipow voce podera informar o componente
IB_Connection na propriedade de mesmo nome (IB_Connection) da tua
IBOQuery e da IBOTransaction...

bom, se voce colocar algo como "\Temp" (sem as aspas...;o) na
propriedade SchemaCacheDir do teu componente IB_Connection, voce vai
perceber que, durante a compilaçao do teu programa, vai aparecer a mesma
msg de "tabela inexistente"... mas, segundo a Helen, se voce conseguir
compilar o programa apos receber essa msg, usando o "use Step or Run to
continue", sem que surja mais nenhuma msg "estranha", e quando voce
acessar o programa fora da IDE do Delphi tambem nao aparecer nenhum
indicio de zica, eh porque deu tudo certo, que essa msg de exception eh
proposital, que quando ela acontece e voce prossegue com a viagem, o
IBObjects cria e "popula" a bendita tabela "IBO$SCHEMA_VERSION"... faz a
historia toda, em suma...

e em um teste que eu fiz agora a pouco, isso realmente aconteceu...


[]s
força sempre!
ate +++

--
Luiz "RedDevil" Stefanski
http://www.RedDevil.eti.br - Delphi Powered By IBObjects
exemplos e dicas sobre o IBObjects:
http://www.firebase.com.br/cgi-bin/firebase.cgi/dnld?ID=165






Mais detalhes sobre a lista de discussão lista