abrir conectar executavel ao banco atraves de um arquivo.ini no LAZARUS pascal

14/08/2019

0

Bom dia, gostaria de saber como conecto ao banco através de um arquivo .ini no lazarus pascal. obs: nao tem problema usar tipos de conexões diferentes, eu me adapto.
Vicente Santos

Vicente Santos

Responder

Posts

22/08/2019

Manoel Junior

Olá, boa tarde. Para você manipular um arquivo .ini basta utilizar o TIniFile. A questão de conexão com o banco basta ter o componente de conexão (FIREDAC, IBEXPRESS, INTERBASE), com ele é possível conectar à base e manipulá-lo sem nenhum outro componente; Para isso é necessário que as dll's do SGBD estejam na pasta do executável. Em casos de buscar informação é necessário a utilização de uma Query. Para facilitar a compreensão seguem os exemplos com o componente IBExpress:
procedure TForm1.preencherCampos();
var lerIni : TIniFile;
begin
try
  lerIni := TIniFile.Create(raizSiUpd+'siupdate.ini');

  UsuarioBanco := lerIni.ReadString('CONFIG BACKUP','USUARIO','');
  txtUsuarioBanco.Text := UsuarioBanco;
  SenhaBanco := lerIni.ReadString('CONFIG BACKUP','SENHA','');
  SenhaBanco := Cript(SenhaBanco,'DESCRIPT');
  txtSenhaBanco.Text := SenhaBanco;
  CaminhoBanco := lerIni.ReadString('CONFIG BACKUP','CAMINHO_BANCO','');
  if CaminhoBanco = '' then
    CaminhoBanco :=  raizSi(raizSiUpd)+'\\'+NBanco+'.FIR';   
  lerIni.Free;
except
on e:Exception do
  msg(' Erro ao ler arquivo de inicialização: '+e.ToString,1,'9');
end;
end;

procedure TForm1.conectarBanco;
begin
    try
      with SQLConnection1 do
      begin
        Connected := false;
        DriverName := 'Firebird';
        Params.Clear;
        Params.Add('Database='+ CaminhoBanco);
        Params.Add('UserName='+ UsuarioBanco);
        Params.Add('Password='+ SenhaBanco);  
        Connected := True;               
        if Connected then
          concatMensagem('Conectado ao banco local')
      end;
      SQLConnection1.Close;
    except
      on e : EIBNativeException do
      begin
        concatMensagem('  Erro ao conectar na base de dados local');
      end;
  end;
end;
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar