Fórum Conectar Banco atraves de um arquivo INI usando TDataBase #267135
02/02/2005
0
Ola amigos, vi um artigo no site que conecta o banco de dados atraves de um arquivo INI(onde se especifica o local do banco), só pq so funciona com IBDataBase, entao queria saber como faço pra conectar meu banco usando TDataBase normal utilizando o caminho que esta digitado dentro de um arquivo INI,
tambem serve, Se alguem souber como faço para alterar a propriedade SERVER NAME(onde esta especificado o caminho do banco de dados) do DataBase que fica dentro da caixa quando vc da um duplo clique, sei que esta propeiedade fica dentro datamodule.database.params, mas nao consigo altera-la em tempo de execuçao
espero q alguem possa me ajudar
tambem serve, Se alguem souber como faço para alterar a propriedade SERVER NAME(onde esta especificado o caminho do banco de dados) do DataBase que fica dentro da caixa quando vc da um duplo clique, sei que esta propeiedade fica dentro datamodule.database.params, mas nao consigo altera-la em tempo de execuçao
espero q alguem possa me ajudar
Pappywla
Curtir tópico
+ 0
Responder
Posts
02/02/2005
Cabelo
Colega
Eu não sei qual banco vc usa.. mas é mais ou menos assm..
procedure TDM.DataModuleCreate(Sender: TObject);
var
v_ini : TInifile;
v_dirwin : PChar;
v_driver : string;
begin
try
DataBase.Connected := false;
except
ShowMessage(´O Banco de Dados já possui uma instancia, ´+#13+9+´Reinicie seu Computador ou contate o Administrador.´);
Halt(0);
end;
v_dirwin := PChar(StringOfChar(´ ´,255));
GetWindowsDirectory(v_dirwin,255);
if FileExists(v_dirwin+´\ARQUIVO.INI´) then
begin
v_ini := TIniFile.Create(v_dirwin+´\ARQUIVO.INI´);
v_driver := v_ini.ReadString(´BANCO´,´DRIVERNAME´,´STANDARD´);
try
DM.DataBase.Params.Clear;
DM.DataBase.Params.Add(´DRIVER NAME=´+v_ini.ReadString(´BANCO´, ´DRIVERNAME´, v_driver));
DM.DataBase.Params.Add(´PATH=´+v_ini.ReadString(´BANCO´, ´PATH´, ´´));
DM.DataBase.Params.Add(´ENABLE=´+v_ini.ReadString(´BANCO´, ´ENABLE´, ´False´));
DM.DataBase.Params.Add(´DEFAULT DRIVER=´+v_ini.ReadString(´BANCO´, ´DEFAULTDRIVER´, ´´));
Finally
v_ini.free;
end;
try
DM.DataBase.Connected := true;
except on E:Exception do
begin
SHOWMESSAGE(´Erro na Conexão com o Banco de Dados ´+#1013+
´Erro: ´+E.Message);
halt(0);
end;
end
else Showmessage(´O arquivo ´ +v_dirwin+ ´\ARQUIVO.INI não foi encontrado´);
end;
Colega..
Assim funciona no paradox..
Mas se vc estiver usando outro banco, é simples, basta dar um duplo clique no componente TDataBase que ele irá abrir a configuração padrão das propriedades do driver que vc estiver utilizando..
sem mais.
Eu não sei qual banco vc usa.. mas é mais ou menos assm..
procedure TDM.DataModuleCreate(Sender: TObject);
var
v_ini : TInifile;
v_dirwin : PChar;
v_driver : string;
begin
try
DataBase.Connected := false;
except
ShowMessage(´O Banco de Dados já possui uma instancia, ´+#13+9+´Reinicie seu Computador ou contate o Administrador.´);
Halt(0);
end;
v_dirwin := PChar(StringOfChar(´ ´,255));
GetWindowsDirectory(v_dirwin,255);
if FileExists(v_dirwin+´\ARQUIVO.INI´) then
begin
v_ini := TIniFile.Create(v_dirwin+´\ARQUIVO.INI´);
v_driver := v_ini.ReadString(´BANCO´,´DRIVERNAME´,´STANDARD´);
try
DM.DataBase.Params.Clear;
DM.DataBase.Params.Add(´DRIVER NAME=´+v_ini.ReadString(´BANCO´, ´DRIVERNAME´, v_driver));
DM.DataBase.Params.Add(´PATH=´+v_ini.ReadString(´BANCO´, ´PATH´, ´´));
DM.DataBase.Params.Add(´ENABLE=´+v_ini.ReadString(´BANCO´, ´ENABLE´, ´False´));
DM.DataBase.Params.Add(´DEFAULT DRIVER=´+v_ini.ReadString(´BANCO´, ´DEFAULTDRIVER´, ´´));
Finally
v_ini.free;
end;
try
DM.DataBase.Connected := true;
except on E:Exception do
begin
SHOWMESSAGE(´Erro na Conexão com o Banco de Dados ´+#1013+
´Erro: ´+E.Message);
halt(0);
end;
end
else Showmessage(´O arquivo ´ +v_dirwin+ ´\ARQUIVO.INI não foi encontrado´);
end;
Colega..
Assim funciona no paradox..
Mas se vc estiver usando outro banco, é simples, basta dar um duplo clique no componente TDataBase que ele irá abrir a configuração padrão das propriedades do driver que vc estiver utilizando..
sem mais.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)