Conectar mdb com ADO usando INI
Boa tarde,
Como faço para criar um arquivo INI para conectar o banco teste.mdb? Utilizo ADOConnection com Microsoft Jet 4.0 OLE DB Provider.
Uso essa string:
Diretorio := ExtractFilePath(Application.Exename);
dmData.Conexao.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0; ' +
'Data Source='+Diretorio+'\Dados\BD.mdb;' +
'Jet OLEDB:Database Password="";' +
'Persist Security Info=False';
Gostaria de criar um arquivo ini para que fosse feita a conexao. Alguém pode me ajudar?
Como faço para criar um arquivo INI para conectar o banco teste.mdb? Utilizo ADOConnection com Microsoft Jet 4.0 OLE DB Provider.
Uso essa string:
Diretorio := ExtractFilePath(Application.Exename);
dmData.Conexao.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0; ' +
'Data Source='+Diretorio+'\Dados\BD.mdb;' +
'Jet OLEDB:Database Password="";' +
'Persist Security Info=False';
Gostaria de criar um arquivo ini para que fosse feita a conexao. Alguém pode me ajudar?
Frederico Brigatte***
Curtidas 0
Respostas
Frederico Brigatte***
31/08/2011
Boa tarde,
Como faço para criar um arquivo INI para conectar o banco teste.mdb? Utilizo ADOConnection com Microsoft Jet 4.0 OLE DB Provider.
Uso essa string:
Diretorio := ExtractFilePath(Application.Exename);
dmData.Conexao.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0; ' +
'Data Source='+Diretorio+'\Dados\BD.mdb;' +
'Jet OLEDB:Database Password="";' +
'Persist Security Info=False';
Gostaria de criar um arquivo ini para que fosse feita a conexao. Alguém pode me ajudar?
Como faço para criar um arquivo INI para conectar o banco teste.mdb? Utilizo ADOConnection com Microsoft Jet 4.0 OLE DB Provider.
Uso essa string:
Diretorio := ExtractFilePath(Application.Exename);
dmData.Conexao.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0; ' +
'Data Source='+Diretorio+'\Dados\BD.mdb;' +
'Jet OLEDB:Database Password="";' +
'Persist Security Info=False';
Gostaria de criar um arquivo ini para que fosse feita a conexao. Alguém pode me ajudar?
Esse é o erro que ta dando.
GOSTEI 0
Paulo Andrade
31/08/2011
Esse erro ocorre pq o local onde está sua conexão, ele já cria abrindo a conexão, tire a oção de abrir conexão, marque False, e tente.
Outra díca é vc colocar esse código na Unit principal. Posso mandar um exemplo caso não dê certo a correção sitada.
GOSTEI 0
Frederico Brigatte***
31/08/2011
Esse erro ocorre pq o local onde está sua conexão, ele já cria abrindo a conexão, tire a oção de abrir conexão, marque False, e tente.
Outra díca é vc colocar esse código na Unit principal. Posso mandar um exemplo caso não dê certo a correção sitada.
Como fazer um arquivo ini? É o melhor método?
GOSTEI 0
Frederico Brigatte***
31/08/2011
Esse erro ocorre pq o local onde está sua conexão, ele já cria abrindo a conexão, tire a oção de abrir conexão, marque False, e tente.
Outra díca é vc colocar esse código na Unit principal. Posso mandar um exemplo caso não dê certo a correção sitada.
Como fazer um arquivo ini? É o melhor método?
Esqueci de informar, o script está no form de Login.
GOSTEI 0
Frederico Brigatte***
31/08/2011
Esse erro ocorre pq o local onde está sua conexão, ele já cria abrindo a conexão, tire a oção de abrir conexão, marque False, e tente.
Outra díca é vc colocar esse código na Unit principal. Posso mandar um exemplo caso não dê certo a correção sitada.
Como fazer um arquivo ini? É o melhor método?
Esqueci de informar, o script está no form de Login.
Alguém para ajudar??
GOSTEI 0
Frederico Brigatte***
31/08/2011
Esse erro ocorre pq o local onde está sua conexão, ele já cria abrindo a conexão, tire a oção de abrir conexão, marque False, e tente.
Outra díca é vc colocar esse código na Unit principal. Posso mandar um exemplo caso não dê certo a correção sitada.
Como fazer um arquivo ini? É o melhor método?
Esqueci de informar, o script está no form de Login.
Alguém para ajudar??
Ninguém? Estou precisando muito disso.
GOSTEI 0
Nilson Alvernaz
31/08/2011
Eu utilizo banco SQL Server tmbém com strindo e conexão ADOConnection.
Uso a seguinte:
Para LER o INI:
procedure LerArquivoIni;
begin
Arquivo := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Configuracao.ini');
try
DriverName := Arquivo.ReadString('BANCO','DRIVER','');
TipoServer := Arquivo.ReadString('BANCO','TIPOSERVIDOR','');
ServerLocal := Arquivo.ReadString('BANCO','SERVERLOCAL','');
ServerRemoto := Arquivo.ReadString('BANCO','SERVERREMOTO','');
ServerSrv := Arquivo.ReadString('BANCO','SERVERSRV','');
NrPorta := Arquivo.ReadString('BANCO','PORTA','');
NomeBanco := Arquivo.ReadString('BANCO','NOMEBANCO','');
UsuarioBanco := Decrypta(Arquivo.ReadString('BANCO','USUARIO',''));
SenhaBanco := Decrypta(Arquivo.ReadString('BANCO','SENHA',''));
finally
Arquivo.Free;
end;
end;
Para GRAVAR o INI:
Arquivo := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Configuracao.Ini');
try
{ Configuração Banco de Dados }
Arquivo.WriteString('BANCO','SERVERLOCAL',edtServerLocal.Text);
Arquivo.WriteString('BANCO','SERVERREMOTO',edtServerRemoto.Text);
Arquivo.WriteString('BANCO','SERVERSRV',edtServerSrv.Text);
Arquivo.WriteString('BANCO','PORTA',edtPorta.Text);
Arquivo.WriteString('BANCO','NOMEBANCO',edtBD.Text);
Arquivo.WriteString('BANCO','USUARIO',Encrypta(edtUsuario.Text));
Arquivo.WriteString('BANCO','SENHA',Encrypta(edtSenhaBD.Text));
finally
Arquivo.Free;
Screen.Cursor:=CrDefault;
end;
Uso o ADO Connection para conectar o banco e na ConnectionString
ConnectionString := 'Provider='+Driver+';'+
'Persist Security Info=True;'+
'User ID='+UserName+';'+
'Password='+Password+';'+
'Initial Catalog='+NomeBanco+';'+
'Data Source='+InstanciaBd+';'+
'Auto Translate=True;'+
'Packet Size=4096;'+
'Workstation ID='+NomeEstacao+';'+
'Network Library=DBMSSOCN';
vê se isso te ajuda.
Uso a seguinte:
Para LER o INI:
procedure LerArquivoIni;
begin
Arquivo := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Configuracao.ini');
try
DriverName := Arquivo.ReadString('BANCO','DRIVER','');
TipoServer := Arquivo.ReadString('BANCO','TIPOSERVIDOR','');
ServerLocal := Arquivo.ReadString('BANCO','SERVERLOCAL','');
ServerRemoto := Arquivo.ReadString('BANCO','SERVERREMOTO','');
ServerSrv := Arquivo.ReadString('BANCO','SERVERSRV','');
NrPorta := Arquivo.ReadString('BANCO','PORTA','');
NomeBanco := Arquivo.ReadString('BANCO','NOMEBANCO','');
UsuarioBanco := Decrypta(Arquivo.ReadString('BANCO','USUARIO',''));
SenhaBanco := Decrypta(Arquivo.ReadString('BANCO','SENHA',''));
finally
Arquivo.Free;
end;
end;
Para GRAVAR o INI:
Arquivo := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Configuracao.Ini');
try
{ Configuração Banco de Dados }
Arquivo.WriteString('BANCO','SERVERLOCAL',edtServerLocal.Text);
Arquivo.WriteString('BANCO','SERVERREMOTO',edtServerRemoto.Text);
Arquivo.WriteString('BANCO','SERVERSRV',edtServerSrv.Text);
Arquivo.WriteString('BANCO','PORTA',edtPorta.Text);
Arquivo.WriteString('BANCO','NOMEBANCO',edtBD.Text);
Arquivo.WriteString('BANCO','USUARIO',Encrypta(edtUsuario.Text));
Arquivo.WriteString('BANCO','SENHA',Encrypta(edtSenhaBD.Text));
finally
Arquivo.Free;
Screen.Cursor:=CrDefault;
end;
Uso o ADO Connection para conectar o banco e na ConnectionString
ConnectionString := 'Provider='+Driver+';'+
'Persist Security Info=True;'+
'User ID='+UserName+';'+
'Password='+Password+';'+
'Initial Catalog='+NomeBanco+';'+
'Data Source='+InstanciaBd+';'+
'Auto Translate=True;'+
'Packet Size=4096;'+
'Workstation ID='+NomeEstacao+';'+
'Network Library=DBMSSOCN';
vê se isso te ajuda.
GOSTEI 0
Frederico Brigatte***
31/08/2011
Eu utilizo banco SQL Server tmbém com strindo e conexão ADOConnection.
Uso a seguinte:
Para LER o INI:
procedure LerArquivoIni;
begin
Arquivo := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Configuracao.ini');
try
DriverName := Arquivo.ReadString('BANCO','DRIVER','');
TipoServer := Arquivo.ReadString('BANCO','TIPOSERVIDOR','');
ServerLocal := Arquivo.ReadString('BANCO','SERVERLOCAL','');
ServerRemoto := Arquivo.ReadString('BANCO','SERVERREMOTO','');
ServerSrv := Arquivo.ReadString('BANCO','SERVERSRV','');
NrPorta := Arquivo.ReadString('BANCO','PORTA','');
NomeBanco := Arquivo.ReadString('BANCO','NOMEBANCO','');
UsuarioBanco := Decrypta(Arquivo.ReadString('BANCO','USUARIO',''));
SenhaBanco := Decrypta(Arquivo.ReadString('BANCO','SENHA',''));
finally
Arquivo.Free;
end;
end;
Para GRAVAR o INI:
Arquivo := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Configuracao.Ini');
try
{ Configuração Banco de Dados }
Arquivo.WriteString('BANCO','SERVERLOCAL',edtServerLocal.Text);
Arquivo.WriteString('BANCO','SERVERREMOTO',edtServerRemoto.Text);
Arquivo.WriteString('BANCO','SERVERSRV',edtServerSrv.Text);
Arquivo.WriteString('BANCO','PORTA',edtPorta.Text);
Arquivo.WriteString('BANCO','NOMEBANCO',edtBD.Text);
Arquivo.WriteString('BANCO','USUARIO',Encrypta(edtUsuario.Text));
Arquivo.WriteString('BANCO','SENHA',Encrypta(edtSenhaBD.Text));
finally
Arquivo.Free;
Screen.Cursor:=CrDefault;
end;
Uso o ADO Connection para conectar o banco e na ConnectionString
ConnectionString := 'Provider='+Driver+';'+
'Persist Security Info=True;'+
'User ID='+UserName+';'+
'Password='+Password+';'+
'Initial Catalog='+NomeBanco+';'+
'Data Source='+InstanciaBd+';'+
'Auto Translate=True;'+
'Packet Size=4096;'+
'Workstation ID='+NomeEstacao+';'+
'Network Library=DBMSSOCN';
vê se isso te ajuda.
Uso a seguinte:
Para LER o INI:
procedure LerArquivoIni;
begin
Arquivo := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Configuracao.ini');
try
DriverName := Arquivo.ReadString('BANCO','DRIVER','');
TipoServer := Arquivo.ReadString('BANCO','TIPOSERVIDOR','');
ServerLocal := Arquivo.ReadString('BANCO','SERVERLOCAL','');
ServerRemoto := Arquivo.ReadString('BANCO','SERVERREMOTO','');
ServerSrv := Arquivo.ReadString('BANCO','SERVERSRV','');
NrPorta := Arquivo.ReadString('BANCO','PORTA','');
NomeBanco := Arquivo.ReadString('BANCO','NOMEBANCO','');
UsuarioBanco := Decrypta(Arquivo.ReadString('BANCO','USUARIO',''));
SenhaBanco := Decrypta(Arquivo.ReadString('BANCO','SENHA',''));
finally
Arquivo.Free;
end;
end;
Para GRAVAR o INI:
Arquivo := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Configuracao.Ini');
try
{ Configuração Banco de Dados }
Arquivo.WriteString('BANCO','SERVERLOCAL',edtServerLocal.Text);
Arquivo.WriteString('BANCO','SERVERREMOTO',edtServerRemoto.Text);
Arquivo.WriteString('BANCO','SERVERSRV',edtServerSrv.Text);
Arquivo.WriteString('BANCO','PORTA',edtPorta.Text);
Arquivo.WriteString('BANCO','NOMEBANCO',edtBD.Text);
Arquivo.WriteString('BANCO','USUARIO',Encrypta(edtUsuario.Text));
Arquivo.WriteString('BANCO','SENHA',Encrypta(edtSenhaBD.Text));
finally
Arquivo.Free;
Screen.Cursor:=CrDefault;
end;
Uso o ADO Connection para conectar o banco e na ConnectionString
ConnectionString := 'Provider='+Driver+';'+
'Persist Security Info=True;'+
'User ID='+UserName+';'+
'Password='+Password+';'+
'Initial Catalog='+NomeBanco+';'+
'Data Source='+InstanciaBd+';'+
'Auto Translate=True;'+
'Packet Size=4096;'+
'Workstation ID='+NomeEstacao+';'+
'Network Library=DBMSSOCN';
vê se isso te ajuda.
Como fazer para o Access? Não entendi direito o código. Obrigado pela resposta.
GOSTEI 0
Nilson Alvernaz
31/08/2011
Bom como fazer com obanco ACCESS eu não sei por que não trabalhei com access, mas o que você vai fazer é o seguinte:
esse código vc usa da seguinte maneira:
No seu formulário de login ou outro que inicia para fazer a conexão vc pede para lê o arquivo INI tipo:
procedure TfrmMain.FormCreate(Sender: TObject);
begin
...
Arquivo := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Configuracao.ini');
try
DriverName := Arquivo.ReadString('BANCO','DRIVER','');
TipoServer := Arquivo.ReadString('BANCO','TIPOSERVIDOR','');
ServerLocal := Arquivo.ReadString('BANCO','SERVERLOCAL','');
ServerRemoto := Arquivo.ReadString('BANCO','SERVERREMOTO','');
ServerSrv := Arquivo.ReadString('BANCO','SERVERSRV','');
NrPorta := Arquivo.ReadString('BANCO','PORTA','');
NomeBanco := Arquivo.ReadString('BANCO','NOMEBANCO','');
UsuarioBanco := Decrypta(Arquivo.ReadString('BANCO','USUARIO',''));
SenhaBanco := Decrypta(Arquivo.ReadString('BANCO','SENHA',''));
finally
Arquivo.Free;
end;
...
end;
a parte que te mandei para GRAVAR o INI
vc cria um outro aplicativo com 1 tela Main ou 1 form que tenha os campos:
edit ServerLocal (ip ou noma da maquina que ficará o banco de dados)
edit NomeBanco (Nome do arquivo Access)
edit Usuario (Nome do Usuario do banco)
edit Senha (Senha do Banco)
coloque um botão gravar onde ele vai chamar a procedure
Arquivo := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Configuracao.ini');
try
ServerLocal := Arquivo.ReadString('BANCO','SERVERLOCAL','');
NomeBanco := Arquivo.ReadString('BANCO','NOMEBANCO','');
UsuarioBanco := Decrypta(Arquivo.ReadString('BANCO','USUARIO',''));
SenhaBanco := Decrypta(Arquivo.ReadString('BANCO','SENHA',''));
finally
Arquivo.Free;
end;
Assim ele vai criar e gravar o arquivo ini.
Faça uma busca no forum por "criar arquivo ini" e vc vai achar muita coisa.
esse código vc usa da seguinte maneira:
No seu formulário de login ou outro que inicia para fazer a conexão vc pede para lê o arquivo INI tipo:
procedure TfrmMain.FormCreate(Sender: TObject);
begin
...
Arquivo := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Configuracao.ini');
try
DriverName := Arquivo.ReadString('BANCO','DRIVER','');
TipoServer := Arquivo.ReadString('BANCO','TIPOSERVIDOR','');
ServerLocal := Arquivo.ReadString('BANCO','SERVERLOCAL','');
ServerRemoto := Arquivo.ReadString('BANCO','SERVERREMOTO','');
ServerSrv := Arquivo.ReadString('BANCO','SERVERSRV','');
NrPorta := Arquivo.ReadString('BANCO','PORTA','');
NomeBanco := Arquivo.ReadString('BANCO','NOMEBANCO','');
UsuarioBanco := Decrypta(Arquivo.ReadString('BANCO','USUARIO',''));
SenhaBanco := Decrypta(Arquivo.ReadString('BANCO','SENHA',''));
finally
Arquivo.Free;
end;
...
end;
a parte que te mandei para GRAVAR o INI
vc cria um outro aplicativo com 1 tela Main ou 1 form que tenha os campos:
edit ServerLocal (ip ou noma da maquina que ficará o banco de dados)
edit NomeBanco (Nome do arquivo Access)
edit Usuario (Nome do Usuario do banco)
edit Senha (Senha do Banco)
coloque um botão gravar onde ele vai chamar a procedure
Arquivo := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Configuracao.ini');
try
ServerLocal := Arquivo.ReadString('BANCO','SERVERLOCAL','');
NomeBanco := Arquivo.ReadString('BANCO','NOMEBANCO','');
UsuarioBanco := Decrypta(Arquivo.ReadString('BANCO','USUARIO',''));
SenhaBanco := Decrypta(Arquivo.ReadString('BANCO','SENHA',''));
finally
Arquivo.Free;
end;
Assim ele vai criar e gravar o arquivo ini.
Faça uma busca no forum por "criar arquivo ini" e vc vai achar muita coisa.
GOSTEI 0
Frederico Brigatte***
31/08/2011
Bom como fazer com obanco ACCESS eu não sei por que não trabalhei com access, mas o que você vai fazer é o seguinte:
esse código vc usa da seguinte maneira:
No seu formulário de login ou outro que inicia para fazer a conexão vc pede para lê o arquivo INI tipo:
procedure TfrmMain.FormCreate(Sender: TObject);
begin
...
Arquivo := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Configuracao.ini');
try
DriverName := Arquivo.ReadString('BANCO','DRIVER','');
TipoServer := Arquivo.ReadString('BANCO','TIPOSERVIDOR','');
ServerLocal := Arquivo.ReadString('BANCO','SERVERLOCAL','');
ServerRemoto := Arquivo.ReadString('BANCO','SERVERREMOTO','');
ServerSrv := Arquivo.ReadString('BANCO','SERVERSRV','');
NrPorta := Arquivo.ReadString('BANCO','PORTA','');
NomeBanco := Arquivo.ReadString('BANCO','NOMEBANCO','');
UsuarioBanco := Decrypta(Arquivo.ReadString('BANCO','USUARIO',''));
SenhaBanco := Decrypta(Arquivo.ReadString('BANCO','SENHA',''));
finally
Arquivo.Free;
end;
...
end;
a parte que te mandei para GRAVAR o INI
vc cria um outro aplicativo com 1 tela Main ou 1 form que tenha os campos:
edit ServerLocal (ip ou noma da maquina que ficará o banco de dados)
edit NomeBanco (Nome do arquivo Access)
edit Usuario (Nome do Usuario do banco)
edit Senha (Senha do Banco)
coloque um botão gravar onde ele vai chamar a procedure
Arquivo := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Configuracao.ini');
try
ServerLocal := Arquivo.ReadString('BANCO','SERVERLOCAL','');
NomeBanco := Arquivo.ReadString('BANCO','NOMEBANCO','');
UsuarioBanco := Decrypta(Arquivo.ReadString('BANCO','USUARIO',''));
SenhaBanco := Decrypta(Arquivo.ReadString('BANCO','SENHA',''));
finally
Arquivo.Free;
end;
Assim ele vai criar e gravar o arquivo ini.
Faça uma busca no forum por "criar arquivo ini" e vc vai achar muita coisa.
esse código vc usa da seguinte maneira:
No seu formulário de login ou outro que inicia para fazer a conexão vc pede para lê o arquivo INI tipo:
procedure TfrmMain.FormCreate(Sender: TObject);
begin
...
Arquivo := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Configuracao.ini');
try
DriverName := Arquivo.ReadString('BANCO','DRIVER','');
TipoServer := Arquivo.ReadString('BANCO','TIPOSERVIDOR','');
ServerLocal := Arquivo.ReadString('BANCO','SERVERLOCAL','');
ServerRemoto := Arquivo.ReadString('BANCO','SERVERREMOTO','');
ServerSrv := Arquivo.ReadString('BANCO','SERVERSRV','');
NrPorta := Arquivo.ReadString('BANCO','PORTA','');
NomeBanco := Arquivo.ReadString('BANCO','NOMEBANCO','');
UsuarioBanco := Decrypta(Arquivo.ReadString('BANCO','USUARIO',''));
SenhaBanco := Decrypta(Arquivo.ReadString('BANCO','SENHA',''));
finally
Arquivo.Free;
end;
...
end;
a parte que te mandei para GRAVAR o INI
vc cria um outro aplicativo com 1 tela Main ou 1 form que tenha os campos:
edit ServerLocal (ip ou noma da maquina que ficará o banco de dados)
edit NomeBanco (Nome do arquivo Access)
edit Usuario (Nome do Usuario do banco)
edit Senha (Senha do Banco)
coloque um botão gravar onde ele vai chamar a procedure
Arquivo := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Configuracao.ini');
try
ServerLocal := Arquivo.ReadString('BANCO','SERVERLOCAL','');
NomeBanco := Arquivo.ReadString('BANCO','NOMEBANCO','');
UsuarioBanco := Decrypta(Arquivo.ReadString('BANCO','USUARIO',''));
SenhaBanco := Decrypta(Arquivo.ReadString('BANCO','SENHA',''));
finally
Arquivo.Free;
end;
Assim ele vai criar e gravar o arquivo ini.
Faça uma busca no forum por "criar arquivo ini" e vc vai achar muita coisa.
Ok. Vou procurar. A proósito, vc sabe como gravar numa tabela os itens do MainMenu (Menus e sub) com seu código ou Tag? Já usou o TreeView?
GOSTEI 0