Caminho para Banco de dados interbase ou firebird
Nós programadores que utilizamos o interbase ou firebird, sempre nos deparamos com um problema, que já se tornou comum nos dias de hoje. Como vou poder alterar o caminho do meu banco sem ter de estar presente supervisionando o que meu cliente está fazendo? Bem, aqui está uma solução muito interessante.
//No Datamodule ponha um IBDatabase e renomeie para Banco,
//um IBTRansaction e renomeie para Transacao...
//Na cláusula USES:
//----------------
SysUtils, Classes, Forms, INIFiles, IBDatabase, DB, IBCustomDataSet,
IBQuery;
//No Create do DataMódule:
//-----------------------
procedure TDM.DataModuleCreate(Sender: TObject);
const
AliasName = SISTEMA;
FileName = Config.ini;
var
ServerName: String;
IniFileName: TIniFile;
ListaParms: TStringList;
begin
{
//Lê arquivo.ini no diretório da aplicação
IniFileName:= TIniFile.Create(ExtractFilePath(ParamStr(0))+FileName);
try
ServerName:= Trim(IniFileName.ReadString(SISTEMA,BANCO,));
finally
IniFileName.Free;
end;
//Termina a aplicação se o servidor não foi fornecido
if ServerName = then
Begin
frmCaminhoBanco := TfrmCaminhoBanco.Create(Application);
frmCaminhoBanco.ShowModal;
frmCaminhoBanco.Free;
end;
//Cria lista de Parâmetros
ListaParms:= TStringList.Create;
With ListaParms do
begin
add(user_name=SYSDBA);
add(password=masterkey);
end;
//Define conexão
try
try
Banco.DatabaseName:= ServerName;
Banco.Params:= ListaParms;
except
Begin
frmCaminhoBanco := TfrmCaminhoBanco.Create(Application);
frmCaminhoBanco.ShowModal;
frmCaminhoBanco.Free;
end;
end;
finally
ListaParms.Free;
end;
}
end;
//No Destroy do DataModule:
//------------------------
Banco.Connected := False;
Qualquer dúvida me enviem um e-mail:
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo