Criar arquivo .ini para conexão com Firedac

15/10/2014

19

Estou com dificuldade para fazer conexão de minha aplicação em rede.
Alguém já conseguiu configurar o Firedac com arquivo de inicialização para conexão com banco Firebird?
Responder

Post mais votado

15/10/2014

Você faz a configuração do FDconnection e testa se está tudo ok. Depois você copia toda a string da propriedade params para o arquivo INI e depois deixa a o propriedade params vazia.

Então você faz a chamada e leitura do arquivo ini no evento OnCreate do form ou datamodule.
Responder

Mais Posts

07/10/2019

Vicente Santos

poderia me dar um exemplo?
Responder

08/10/2019

Rafael Bosco

Dentro do seu ini provavelmente deve ter algo parecido como:

CaminhoBancoDeDados = \\\\192.168.0.177:C:\\SEUBANCOFIREBIRD.FDB;

Usei um IP aleatório ali para simular uma conexão em rede. (ou o nome do computador! Ex.: \\\\SERVIDOR).

Dependendo da versão do seu FireBird você vai precisar ser explicito ao FireDAC ao informar o caminho, pra isso você deve colocar um parâmetro novo na sua conexão:

   FFireDACConnection.Params['server'] := '192.168.0.177';


Mas geralmente você não necessita colocar o parâmetro SERVER na conexão do FireDAC, apenas passar o caminho completo, acredito que alguma forma destas vá funcionar para você.

Aqui um exemplo:

 FFireDACConnection := TFDConnection.Create(nil);
   try
      FFireDACConnection.DriverName := 'FB'
      FFireDACConnection.LoginPrompt := False;
      FFireDACConnection.Params.Values['Port'] := '3050';
      FFireDACConnection.Params.Values['CharacterSet'] := 'win1252'; 
      FFireDACConnection.Params.Database := GetDataBasePathFromIni;  // Sua função que retona o caminho do banco lá do seu ini
      // ou coloque o parâmetro de SERVER caso não de certo
      FFireDACConnection.Params['Server'] := '192.168.0.177';
      FFireDACConnection.Params.UserName := 'SYSDBA';
      FFireDACConnection.Params.Password := 'masterkey';

      FFireDACConnection.Open;
   except
      on E: Exception do
         raise Exception.CreateFmt('Erro ao tentar conectar ao banco de dados! Motivo = %s', [E.Message]);
   end;

Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira