Erro ao conectar o Banco com DBExpress!!

Delphi

03/08/2004

Colegas..

Estou acessando o Firebird, com DBExpress..

Uso um arquivo .Ini para passar os parâmetros de conexão para o SQLConnection..

Quando acesso no micro com o Delphi 7 e Windows XP dá tudo certo, conecta normalmente quando tento acessar o sistema em uma estação Windows 98, dá erro..

´Missing DriverName Property´..

Mas tenho um outro sistema que roda perfeitamente e acessa um banco firebird no servidor e não dá erro..

O quê será que está acontecendo??

Agradeço a todos antecipadamente.

Cabelo


Cabelo

Cabelo

Curtidas 0

Respostas

G1b4

G1b4

03/08/2004

Caro cabelo_uni,
Verifique se a propriedade drivername do SQLConnection é InterBase.
Pois esse erro está informando que falta a propriedade drivername...

Espero te-lo ajudado !!!


GOSTEI 0
Cabelo

Cabelo

03/08/2004

Como eu postei anteriormente, eu uso um arquivo .Ini para passar os parâmetros ao SQL Connection em RUN TIME, e por este motivo não tenho a propriedade Connection name, nem Driver Name, e nenhuma das propriedades, pois estas propriedade assim como os parâmetros de conexão, ele busac de um arquivo .Ini..

Aí é que está o erro, quando rodo o sistema em outra máquina, dá o erro acima, mas o interessante é que existe um outro sistema que acessa no mesmo servidor um banco firebird tb e usa o .Ini e funciona normalmente..

Tô ficando louco..

Cabelo


GOSTEI 0
Vinicius2k

Vinicius2k

03/08/2004

Cabelo,

Por mais estranho que possa parecer, é necessário preencher o DriverName, mesmo não usando as conexões nomeadas do dbxconnections.ini

Mesmo informando em runtime, ou vc preenche manualmente o DriverName ou cria tbm uma chave para ele no seu .ini personalizado...
A TSQLConnection faz uma checagem se esta propriedade(DriverName) está preenchida antes de prosseguir com o carregamento das demais propriedades...

Espero ter ajudado...
T+


GOSTEI 0
Cabelo

Cabelo

03/08/2004

Vinicius..

Tudo bem..

Isso que vc disse eu faço, no meu .Ini eu tenho uma chave onde eu leio o DriverName e as propriedades de ´Entrada´ do meu SQL Connection..

Como eu já disse, tenho um outro sistema que usa exatamente a mesma forma que este, o problema é que somente este está dando erro..

Cabelo


GOSTEI 0
Vinicius2k

Vinicius2k

03/08/2004

Cabelo,
Então creio serem duas as possibilidades :

1 - alguma instrução diferente entre as duas conexões, como propriedades ou a própria rotina de carregamento do .ini

2 - a aplicação não está enchergando do .ini, seja por algum problema de nomenclatura ou de S.O... já tive ´instabilidades´ como esta em Win 98 e, desde então deixei de usar um um simples
DBIni:= TIniFile.Create(´database.ini´);

e passei a usar
DBIni:= TIniFile.Create(ExtractFilePath(Application.ExeName)+´database.ini´);


Verifique estes pontos e retorne...
T+


GOSTEI 0
Cabelo

Cabelo

03/08/2004

Vinicius..

Eu já uso assim como vc passou..

v_path := copy(ExtractFilePath(Application.ExeName), 1, 3) + ´Windows´ =
´arquivo.ini´;

Cabelo


GOSTEI 0
Cabelo

Cabelo

03/08/2004

Obrigado a todos pela atenção, mas já resolvi meu problema..

A propriedade LoadParamsOnConnect, precisa estar setada para False, durante a conexão..

Já que executo :

sqlConnection.LoadParamsFromIniFile(ini.FileName);

Cabelo


GOSTEI 0
POSTAR