Configurar SQLConnection via codigo.Como?
Ola!
Estou usando sqlconnection com clientdataset etc...Configurei minha conexao clicando duas vezes no sqlconnection normal ne?
como eu faço para configurar o databasename via codigo, para q eu possa colocar o path num INI e carregar direto do INI para o sqlconnection?Me possibilitando mudar de local o banco?
abraços
Estou usando sqlconnection com clientdataset etc...Configurei minha conexao clicando duas vezes no sqlconnection normal ne?
como eu faço para configurar o databasename via codigo, para q eu possa colocar o path num INI e carregar direto do INI para o sqlconnection?Me possibilitando mudar de local o banco?
abraços
Ecptavares
Curtidas 0
Respostas
Marcio.theis
30/05/2006
Vc pode fazer no momento que cria a aplicação lê o arquivo .ini, carrega as informações para a conexão e somente então manda abrir a conexão com o BD.
GOSTEI 0
Ecptavares
30/05/2006
Sim, mas como eu faço isso?Quais propriedades do sqlconnection eu tenho q preencher?
GOSTEI 0
Marcio.theis
30/05/2006
Veja se lhe ajuda:
http://forum.clubedelphi.net/viewtopic.php?t=60171
http://forum.clubedelphi.net/viewtopic.php?t=60171
GOSTEI 0
Ecptavares
30/05/2006
ajudou em futuras duvidas q vou precisar disso , mas preciso saber como configurar o sqlconnection para ler do arquivo INI no onCreate do form e ants de abri-lo
GOSTEI 0
Riaj
30/05/2006
Olá, pelo que entendi é isso que você tá precisando:
- na propriedade [b:36387a8d80]LoadParamsOnConnect[/b:36387a8d80] do SQLConnection marque [b:36387a8d80]False[/b:36387a8d80];
- no [b:36387a8d80]OnCreate[/b:36387a8d80] de algum form (DataModule por exemplo) coloque o seguinte código:
Espero que ajude.
abraços,
- na propriedade [b:36387a8d80]LoadParamsOnConnect[/b:36387a8d80] do SQLConnection marque [b:36387a8d80]False[/b:36387a8d80];
- no [b:36387a8d80]OnCreate[/b:36387a8d80] de algum form (DataModule por exemplo) coloque o seguinte código:
arqini := TIniFile.Create(´.\dbxconnections.ini´); if SQLConnection.ConnectionState = csStateOpen then SQLConnection.Connected := False; SQLConnection.LoadParamsFromIniFile(´.\dbxconnections.ini´); with SQLConnection.Params do begin Values[´DriverName´] := arqini.ReadString(nF,´DriverName´,´´); Values[´BlobSize´] := arqini.ReadString(nF,´BlobSize´,´´); Values[´CommitRetain´] := arqini.ReadString(nF,´CommitRetain´,´´); Values[´Database´] := arqini.ReadString(nF,´Database´,´´); Values[´ErrorResourceFile´] := arqini.ReadString(nF,´ErrorResourceFile´,´´); Values[´LocaleCode´] := arqini.ReadString(nF,´LocaleCode´,´´); Values[´Password´] := arqini.ReadString(nF,´Password´,´´); Values[´RoleName´] := arqini.ReadString(nF,´RoleName´,´´); Values[´ServerCharSet´] := arqini.ReadString(nF,´ServerCharSet´,´´); Values[´SQLDialect´] := arqini.ReadString(nF,´SQLDialect´,´´); Values[´Interbase TransIsolation´] := arqini.ReadString(nF,´Interbase TransIsolation´,´´); Values[´User_Name´] := arqini.ReadString(nF,´User_Name´,´´); Values[´WaitOnLocks´] := arqini.ReadString(nF,´WaitOnLocks´,´´); end;
Espero que ajude.
abraços,
GOSTEI 0
Paullsoftware
30/05/2006
eu faço mais simples....
carrego o INI de configuração fazendo assim:
a estrutura do ini é essa:
carrego o INI de configuração fazendo assim:
procedure LoadConfig; var ArqConf : string; begin ArqConf := ChangeFileExt(ParamStr(0),´.ini´); if FileExists(ArqConf) then begin with sqlCONN do begin try Close; LoadParamsFromIniFile(ArqConf); Open; except raise Exception.Create(´Erro ao conectar com o banco de dados!´); end; end; end else MessageDlg(´Não foi possível encontrar o arquivo de configuração´,mtError,[mbOK],0); end;
a estrutura do ini é essa:
[SISLOC]
DriverName=Interbase
Database=D:\Delphi\Projetos\Locadora(SAFPE)\conversao\DBLOC7023.fdb
RoleName=RoleName
User_Name=sysdba
Password=masterkey
ServerCharSet=WIN1252
SQLDialect=3
BlobSize=-1
CommitRetain=False
WaitOnLocks=True
ErrorResourceFile=
LocaleCode=0000
Interbase TransIsolation=ReadCommited
Trim Char=False
espero ter ajudado :wink:GOSTEI 0
Ecptavares
30/05/2006
Ola Paulo!
Primeiramente obrigado a todos pelas respostas.
Paulo , tentei fazer o q vc me indicou mas ta dando um erro missing drivername.
Como resolver isso?
onrigado
Primeiramente obrigado a todos pelas respostas.
Paulo , tentei fazer o q vc me indicou mas ta dando um erro missing drivername.
Como resolver isso?
onrigado
GOSTEI 0