Fórum Alterar Propriedades SQLConnection #220047
12/03/2004
0
Como faço para alterar em RUNTIME os CONNECTION SETTINGS da Propriedade Connection do SQLConnection??
Estou compilando .CLX
Preciso disso pois utilizo um arquivo .INI e tenho o caminho do Banco de Dados neste arquivo, e preciso alterar isso no CONNECTION SETTINGS no momento da conexão..
agradeço antecipadamente
Cabelo
Cabelo
Curtir tópico
+ 0Posts
12/03/2004
Jubrovolski
Fazendo isso, ele procurará os arquivos
dbxconnections.ini e dbxdrivers
Faça com que seu programa altere a linhas necessárias no arquivo dbxconnections.ini
Mas antes de fazer alteração mude a propriedade connected para false.
Depois conecte novamente após a mudança.
Espero ter ajudado.
Gostei + 0
12/03/2004
Cabelo
Só mais uma pergunta...
Se existe então um arquivo .INI do DBExpress, tem como eu alterar o arquivo que ele irá usar para realizar a conexão???
sem mais
Cabelo
Gostei + 0
12/03/2004
Jubrovolski
[MySQLConnection]
DriverName=MySQL
HostName=server
Database=test
User_Name=root
Password=123456
BlobSize=-1
ErrorResourceFile=
LocaleCode=0000
Você pode criar uma função para buscar dentro do arquivo as linhas e o texto que deseja mudar. Ou caso apenas trabalhe com um tipo de banco de dados, pode deletar o arquivo e criar um outro apenas com o banco de dados que trabalha. No meu caso, trabalho com mysql.
Gostei + 0
12/03/2004
Cabelo
a minha dúvida é :
Tem como utilizar outro arquivo? Com nome e diretórios diferentes??
sabe pq? Eu compilo em .CLX e o executável será usado em Windows e no Linux, simplismente compiladno para um e para outro, mas o código não deve ser alterado..entende? Por isso a minha pergunta.
sem mais
Cabelo
Gostei + 0
12/03/2004
Jubrovolski
Tente colocar um novo tópico perguntando:
Como informar qual arquivo de inicialização usar na propriedade
LoadParamsOnConnect.
Gostei + 0
12/03/2004
Jubrovolski
SqlConnection1.LoadParamsFromIniFile(´dbxconnections.ini´);
Gostei + 0
12/03/2004
Cabelo
vc conseguiu fazer a conexão?
Pq aqui eu não consegui..
tentei de todos os jeitos.
Mas sempre dá um erro assim ´Missing DriverName property´, já cheguei a excluir a conexão, tentei refazê-la e nada..
Vc saberia dizer o quê pode ser, já que vc utiliza isso..
Agradeço antecipadamente.
Cabelo
Gostei + 0
12/03/2004
Jubrovolski
procedure TForm1.FormCreate(Sender: TObject);
begin
sqlconnection1.Connected:=false;
SqlConnection1.LoadParamsFromIniFile(´config.ini´);
if SQLConnection1.ParamsLoaded = true then
showmessage(´Arquivo Carregado´)
else
begin
showmessage(´Não foi possível carregar o arquivo´);
exit;
end;
// aqui abaixo eu abro os dataset1
sqlclientdataset1.CommandText := ´select * from clientes´;
sqlclientdataset1.Active :=true;
Gostei + 0
12/03/2004
Jubrovolski
procedure TDataModule2.DataModuleCreate(Sender: TObject);
begin
sqlconnection1.Connected:=false;
sqlconnection1.ConnectionName := ´MySQLConnection´;
sqlconnection1.DriverName := ´MySQL´;
sqlconnection1.GetDriverFunc := ´getSQLDriverMYSQL´;
sqlconnection1.LibraryName := ´dbexpmysql.dll´;
sqlconnection1.LoadParamsOnConnect := True;
sqlconnection1.VendorLib := ´libmysql.dll´;
SqlConnection1.LoadParamsFromIniFile(´config.ini´);
if SQLConnection1.ParamsLoaded = true then
showmessage(´Arquivo Carregado´)
else
begin
showmessage(´Não foi possível carregar o arquivo´);
exit;
end;
end;
Gostei + 0
12/03/2004
Cabelo
Valeu..
Estava tentando fazer como no Delphi 5, carregando parâmetro a parâmetro, mas vi que não tem como criar uma conexão em RUNTIME, simplesmente com o arquivo .INI, vc tem mesmo que abrir o componente e criar a conexão lá..
por isso dava erro..
mas infelizmente terei que abandonar a idéia..
Muito obrigado pela sua atenção..
sem mais
Cabelo
Gostei + 0
13/03/2004
Everton
Cabelo,
em todos os meus sistemas durante o desenvolvimento eu crio uma conexão, porém quando distribuo a única alteração que faço é alterar o caminho do servidor, que carrego através de um arquivo INI. Para isso utilizo o seguinte comando:
SQLConnection.Close;
SQLConnection.Params.Values[´SERVER NAME´] := LocalGDB_informado_no_INI
SQLConnection.Open;
Não esqueça de fechar a conexão com o banco antes de compilar o programa.
qualquer dúvida estamos aqui.
Gostei + 0
16/03/2004
Cabelo
Mudar as propriedades da conexão eu tb já faço..
O problem é que eu gostaria de criar a conexão, em tempo de execução..
Exemplo, quando entro no editor de conexões do SQLConnection, eu visualizo todas as conexões, dos programas a qual estou desenvolvendo. O que gostaria é de não criar estas conexões no componente, e sim somente na hora de rodar o sistema, entende?
Mesmo assim grato pela sua atenção.
sem mais
Cabelo
Gostei + 0
01/04/2004
Juamaral
Gostei + 0
14/09/2007
Rdrigo
Gostei + 0
14/09/2007
Cabelo
Este é um exemplo de um arquivo .INI usando o Firebird...
[TE] LIBRARYNAME=dbexpint.dll GETDRIVERFUNC=getSQLDriverINTERBASE VENDORLIB=gds32.dll DRIVERNAME=Interbase CONNECTIONNAME=TESTE [TESTE] DriverName=Interbase Database=C:\TESTE.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=true
se usar assim dentro do delphi tb funciona..
abs..
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)