Qual o melhor tipo de conexão?
Amigos,
Eu tenho um BD em FireBird e estava usando a ADO, mas pelo o que sei, toda hora que eu faço uma aplicação com FireBird tenho que ir em Ferramentas administrativas - Fontes de dados (ODBC), adicionar uma fonte de dados de usuários!
Isso é assim mesmo??
Pois quando uso Access eu só preciso conectar usando Microsoft JET 4.0
Eu tenho um BD em FireBird e estava usando a ADO, mas pelo o que sei, toda hora que eu faço uma aplicação com FireBird tenho que ir em Ferramentas administrativas - Fontes de dados (ODBC), adicionar uma fonte de dados de usuários!
Isso é assim mesmo??
Pois quando uso Access eu só preciso conectar usando Microsoft JET 4.0
Caezar
Curtidas 0
Respostas
Camilo
30/09/2005
aconselho a usar o DBxPress, pois leva uma dll e pronto... naum precisa configurar nada
GOSTEI 0
Caezar
30/09/2005
Imaginava!
Como eu faço uma conecção DBExpress para jogar os dados em DBGrid?
Como eu faço uma conecção DBExpress para jogar os dados em DBGrid?
GOSTEI 0
Michael
30/09/2005
Imaginava!
Como eu faço uma [b:2a530b5385]conecção[/b:2a530b5385] DBExpress para jogar os dados em DBGrid?
:shock:
Use estes componentes: [b:2a530b5385]SQLConnection [/b:2a530b5385]+ [b:2a530b5385]SQLDataSet [/b:2a530b5385]+ [b:2a530b5385]DataSetProvider [/b:2a530b5385]+ [b:2a530b5385]ClientDataSet[/b:2a530b5385] + [b:2a530b5385]DataSource[/b:2a530b5385] + [b:2a530b5385]DBGrid[/b:2a530b5385].
Ligue-os da direta para a esquerda, isto é, o DBGrid ao DataSource; este ao ClientDataSet, etc.
Dependendo da versão do Firebird que vc irá utilizar, pode ser que o driver da Borland não ofereça suporte a todos os recursos do banco. Existe um driver free para o Firebird, chamado [url=http://www.progdigy.com/]UIB[/url].
[]´s
GOSTEI 0
Caezar
30/09/2005
Ok, amigo mas e para fazer uma consulta sql?
No lugar de qual componente eu colocaria o SQLQuery?
No lugar de qual componente eu colocaria o SQLQuery?
GOSTEI 0
Pezzin
30/09/2005
Eu uso o IBX.
GOSTEI 0
Marceloho
30/09/2005
Ok, amigo mas e para fazer uma consulta sql?
No lugar de qual componente eu colocaria o SQLQuery?
Para fazer a consulta SQL vc usa o SQLDataSet, digita na propriedade commandText
GOSTEI 0
Caezar
30/09/2005
Amigos fiz a conexão conforme explicado. Adcionei alguns campos do SQLDataSet1 e um botão com o código:
e ocorre este erro:
[b:c1dcb2ec56]´SQLDataSet1: Connot Modify a ready-only dataset´[/b:c1dcb2ec56]
O que será??
DataModule2.SQLDataSet1.Append;
e ocorre este erro:
[b:c1dcb2ec56]´SQLDataSet1: Connot Modify a ready-only dataset´[/b:c1dcb2ec56]
O que será??
GOSTEI 0
Beppe
30/09/2005
Vc deverá trabalhar com o ClientDataSet. Fará inserts e updates nele, e quando chegar ao fim da operação, chame ApplyUpdates(NumeroMaximoDeErros). Há vários detalhes sobre este tópico, então sugiro que consulte um livro ou ao menos use o botão pesquisar.
GOSTEI 0
Camilo
30/09/2005
caro colega... vc pode pssar parametros via SQLDataSet ou pelo ClientDataSet, eu particularmente estou usando o SQLDataSet, em um select cliente, ficaria assim...
ClientDataSet.Close;
SQLDataSet.CommandText := ´Select * from CLIENTES´;
ClientDataSet.Open;
neste caso pra um select, se fosse um insert, delete ou update ficaria
ClientDataSet.Close;
SQLDataSet.CommandText := ´string de insert, delete ou update, q acho q vc jah tenha conhecimento como se monta´
SQLDataSet.ExecSQL;
depois vc teria q dá um novo select pra recuperar seus dados...
espero ter ajudado, pelomenos é assim q faço...
ClientDataSet.Close;
SQLDataSet.CommandText := ´Select * from CLIENTES´;
ClientDataSet.Open;
neste caso pra um select, se fosse um insert, delete ou update ficaria
ClientDataSet.Close;
SQLDataSet.CommandText := ´string de insert, delete ou update, q acho q vc jah tenha conhecimento como se monta´
SQLDataSet.ExecSQL;
depois vc teria q dá um novo select pra recuperar seus dados...
espero ter ajudado, pelomenos é assim q faço...
GOSTEI 0
Caezar
30/09/2005
Amigos,
Montei a Conexão desta forma:
[b:356522a416]SQLConnection + SQLDataSet + DataSetProvider + ClientDataSet + DataSource + DBGrid[/b:356522a416]
Criei um botão com o seguinte código:
e outro:
cada vez que gravo um registro ele aparece no DBGrid porém não está adicionando no BD.
Montei a Conexão desta forma:
[b:356522a416]SQLConnection + SQLDataSet + DataSetProvider + ClientDataSet + DataSource + DBGrid[/b:356522a416]
Criei um botão com o seguinte código:
ClientDataSet1.append;
e outro:
ClientDataSet1.post;
cada vez que gravo um registro ele aparece no DBGrid porém não está adicionando no BD.
GOSTEI 0
Caezar
30/09/2005
alguem???
GOSTEI 0
Fabiano Góes
30/09/2005
Olha amigo caezar não trabalho com dbExpress mais acho que a lógica é a mesma.
Tenta assim:
antes do append:
e após o post:
Tenta assim:
antes do append:
SQLConnection1.StartTransaction(); ClientDataSet1.append;
e após o post:
ClientDataSet1.post; SQLConnection1.Commit();
GOSTEI 0
Michael
30/09/2005
Olá!
Vc está esquecendo o essencial:
Sem isso vc não submete as alterações para o servidor do banco de dados. [b:96e843275a]Post [/b:96e843275a]apenas salva na memória do ClientDataSet.
[]´s
Vc está esquecendo o essencial:
ClientDataSet.ApplyUpdates(<numero_de_erros>)
Sem isso vc não submete as alterações para o servidor do banco de dados. [b:96e843275a]Post [/b:96e843275a]apenas salva na memória do ClientDataSet.
[]´s
GOSTEI 0
Marcio.theis
30/09/2005
Bom... Eu utilizo o ADO e gosto muito dele, no qual até indico para todos, só que eu utilizo ele com um arquivo chamado UDL, no qual neste fica a configuração de acesso ao banco, ficando desta forma muito simples na minha aplicação para alterar de BD, basta mudar o arquivo UDL.
GOSTEI 0
Caezar
30/09/2005
Obrigado amigos,
Michael o que significa: [b:f355a09e54](<numero_de_erros>)[/b:f355a09e54]
e ao amigo /]/]@t como faço essa UDL???
Michael o que significa: [b:f355a09e54](<numero_de_erros>)[/b:f355a09e54]
e ao amigo /]/]@t como faço essa UDL???
GOSTEI 0
Caezar
30/09/2005
HA!!!
Só mais um problema.
No FireBird coloquei uma tabela apenas e nela um campo Código (integer) esse campo tem que ser auto numeração. Então cliquei em criar gerador e em automatismo e ele criou para mim.
Ocorre que no delphi ele não está recuperando o valor do código na gora em que vou inserir algum dado!
Só mais um problema.
No FireBird coloquei uma tabela apenas e nela um campo Código (integer) esse campo tem que ser auto numeração. Então cliquei em criar gerador e em automatismo e ele criou para mim.
Ocorre que no delphi ele não está recuperando o valor do código na gora em que vou inserir algum dado!
GOSTEI 0
Marcio.theis
30/09/2005
Um arquivo UDL vc pode criar atraves de um arquivo txt, ou seja, vc cria um arquivo com estensão .txt e depois altera para .udl. Sendo que se vc der duplo crick e entrar na tela, podera ver as opções de configurações que podera de ter, e para fazer isto vc deve de ter o MDAC atualizado....
GOSTEI 0
Fabiano Góes
30/09/2005
Olá [b:708b35d43d][color=red:708b35d43d]/]/]@t[/color:708b35d43d][/b:708b35d43d] , será que podia me mandar um exemplo da utilização do ADO com esse arquivo UDL e se possivel me mandar esse arquivo UDL.
Ficaria muito grato !!!!
fabianogoes@ig.com.br
Ficaria muito grato !!!!
fabianogoes@ig.com.br
GOSTEI 0