BD em mdb no mesmo diretório do exe

Delphi

28/09/2013

Olá, pessoal. Tô com o seguinte problema: desenvolvi minha aplicação e está tudo legal só que para que fique genérica preciso colocar o endereço do meu banco de dados, um arquivinho mdb, no mesmo diretório do executável do programa só que não sei como fazer. Estou usando o TADOConnection. Tnho que mudar no datamodule ou no formulário que irá chamar a conexão???? como e onde eu mudo essa string??
Fabricio Luciano

Fabricio Luciano

Curtidas 0

Respostas

Fabricio Luciano

Fabricio Luciano

28/09/2013

coloquei assim no formulário principal pessoal e dá erro de : Não foi possível encontrar ISAM instalável. Será que posso colocar no onCreate do DataModule??? O que está errado no código???

con_string := 'Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=ExtractFilePath(Application.ExeName)' + 'Mello_Andaimes.mdb;';
con_string := 'Mode=Share Deny None;Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";';
con_string := 'Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;';
con_string := 'Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;';
con_string := 'Jet OLEDB:Encrypt Database=False;Jet OLEDB:Dont Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False;';
Data_Module.Connection_Clientes.Close;
Data_Module.Connection_Clientes.ConnectionString := con_string;
Data_Module.Connection_Clientes.Open();
GOSTEI 0
Joel Rodrigues

Joel Rodrigues

28/09/2013

Na parte do DataSource você esqueceu uma aspa e um sinal de +. Veja como está:
...Data Source=ExtractFilePath(Application.ExeName)'

Quando o correto seria:
...Data Source='+ExtractFilePath(Application.ExeName)


Da forma como está, "ExtractFilePath(Application.ExeName)" está indo como texto para a string de conexão e não pegando o valor correto.
GOSTEI 0
Fabricio Luciano

Fabricio Luciano

28/09/2013

Concerto feito, coloquei a aspas simples e o sinal de concatenação ficando assim:(con_string := 'Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=' + ExtractFilePath(Application.ExeName) + 'Mello_Andaimes.mdb;';), mas o erro permanece.
GOSTEI 0
Marcos Saffran

Marcos Saffran

28/09/2013

Olá Fabricio,

tente da seguinte forma:

con_string := 'Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=Mello_Andaimes.mdb;';

GOSTEI 0
Fabricio Luciano

Fabricio Luciano

28/09/2013

Não meu amigo...não funcionou. deu um erro maluco com um numero enorme como de memória.....afff já tô doido com isso pq pesquisando na net esse problema é frequente mas ninguém posta uma solução.....mas, vamos continuando.
GOSTEI 0
POSTAR