Quero conectar no bd sem ultilizar odbc como faço em Delphi

07/10/2003

0

Me falaram que é facil!!!!! só que estou apanhado alguem poderia me ajudar a conectar ao banco sem ultilizar a odbc....
Muito Obrigado

Eduardo!


Genial_reis

Genial_reis

Responder

Posts

08/10/2003

Mmtoor

No site http://www.cjs.com.br tem o download do ZEOSLIB. Também um tutorial que ensina passo a passo a instalação dos componentes e a utilização do MySQL co delphi.
MMTOOR2003


Responder

16/10/2003

Mition

Em um DataModule coloque os seguintes componentes:

da pasta DBExpress:
* SQLConnection1
* SQLDataSet1

da pasta DataAccess:
* DataSetProvider1 (aqui está o pulo do gato!)
* ClientDataSet1
* DataSource1

configurações das propriedades de
1. SQLConnection1
1.1 ConnectionName:=MySQLConnection
1.2 DriverName := MySQL
1.3 LoginPrompt:=false
1.4 Params:
Host Name: <endereço no servidor> ´Ex: 200.215.20.3´
Data BAse: <nome do seu BD>
User Name: <login de acesso>
Password: <senha de acesso>
1.5. Connected:=true;

configurações das propriedades de
2. SQLDataSet12.1 SQLConnection:=SQLConnection1 (ou o nome que vc escolheu)
2.2 CommandType -> 03 opções:
2.2.1. Se vc escolher ctQuery (padrão), deverá trabalhar com instruções SQL (insert, update, delete, select) - (recomendável)
2.2.2. ctTable, instruções normais de objetos Table
2.2.3. ctStoredProc, procedimentos de instruções em SQL para ´stored procedures´ (gatilhos - muito útil, qdo necessário)
2.3. CommandText:= select * from <nome tabela> <demais comandos> ou clique em ´...´ para abrir o editor SQL e monte sua instrução. Utilize inicialmente instruções de consulta - em outras ocasiões, poderá utilizar comandos de execução (+ prá frente).
2.4. Active:=true

configurações das propriedades de
3. DataSetProvider1
3.1 DataSet:=SQLDataSet1 (ou o nome que vc escolheu)

configurações das propriedades de
4. ClientDataSet1 (manterá os registros da tabela em memória (buffer) para a navegação bidirecional - vc não estará navegando na table e sim na consulta)
4.1 ProviderName:=DataSetProvider1 (ou o nome que vc escolheu)
4.2 Active:=true
OBS.:esse componente ClientDataSet substitui o componente Table! a vantagem é que vc está trabalhando com os registro/tables em sua máquina. O servidor será atualizando (e a rede acessada) somente após a confirmação dos dados inseridos, alterados ou excluídos. Não haverá um grande tráfego na rede.

configurações das propriedades de
5. DataSource1 (aí é muita moleza - se vira!(risos))

OBS: para cada tabela em seu data módulo, vc deverá ter um componente SQLDataSet,DataSetProvider, ClientDataSet e DataSource. (somente um SQLconnection compartilhado entre todos eles)
Se houver necessidade de vc acessar outro Banco de Dados, deverá colocar outro SQLConnection.

Coisas a se considerar:

1. As buscas são feitas através do método LOCATE dos ClientDataSets (esqueça seek, gotokey,gotonearest,...). Como as tabelas já tem seu índice ou campos indexados, ele fará a consulta por onde ele achar mais rápido (claro que depende se chave que vc está buscado é índice ou indexado)
2. Navegação é normal (first, prior, ...)
3. Não utilize o método Post (apesar de estar habilitado). Motivo: Post atualiza apenas o ClientDataSet (em buffer), e não atualizará o BD Servidor.
4. No lugar de Post, utilize o método applyUpdates(-1). Desse modo atualizará o ClientDataSet e o SQLDataSet (diretamente no BD Servidor).
Ex: DataModule1.ClientDataSet1.applyupdates(-1);
5. Daqui para frente, só utilize instruções em SQL (se preferir. Lógico!)
6. Se preferir utilizar os métodos Insert, Delete, Edit, etc, no ClientDataSet (como no Table), tudo bem, mas nunca utilize POST para confirmar e sim ApplyUpdates(-1)!
7. Se um SQLConnection estiver fechado, a partir do momento que vc abrir um SQLDataSet, a conexão será automaticamente aberta. Não acontece o mesmo se fizer o ClientDataSet.

UFA! Quanto tempo para digitar!

Boa Sorte

A propósito (NÃO TEM COMO DAR ERRADO POIS EU UTILIZO DIARIAMENTE!)

[]´S e boa sorte

Mição

P.S. Uma boa bibliografia->Delphi 6 com FireBird/Interbase - Bastiaan Pieter Marinus Wilderom/Marcelo Frank - Editora Érica. Esse livro explica detalhadamente o que passei para vc! Sem falar que o livro é um projeto de PDV (posto de venda - com impressora fiscal e uso de código de barras - MUITO ÚTIL E NECESSÁRIO)
Revistas Clube Delphi Edições -> 17,18,22,23 e 28.


Responder

03/11/2003

Rbsnsilva

kra eu te amo ! hueahueahaahu
putz salvou minha vida ! deu perfeitamente certo isso !!!!!!
vc não imagina o tamanho das rotinas que eu estava fazendo pra usar DELPHI com Mysql...muito obrigado mesmo !!!


Responder

06/01/2004

Gecko

Tem jeito de fazer esses comandos no Delphi 5?


Responder

08/01/2004

Inaudio

Fiz teste do DBtools vs 2.11 (Portugues) com MySql 5.00 e vs MySql 3.23 perfeito.

Configuração de acesso ao banco via DBTools tranquila :


Faço tudo com o Banco via DBtools ( Ótimo interface Windows...para MySql )

Agora estou com Delphi 5 e buscando uma forma prática de abrir e usar o banco em MySql com o Delphi 5.

Alguma Dica, How To para me passar por favor.

Grato

inaudio@comdados.com


Responder

09/01/2004

Mysys

Fiz teste do DBtools vs 2.11 (Portugues) com MySql 5.00 e vs MySql 3.23 perfeito. Configuração de acesso ao banco via DBTools tranquila : Faço tudo com o Banco via DBtools ( Ótimo interface Windows...para MySql ) Agora estou com Delphi 5 e buscando uma forma prática de abrir e usar o banco em MySql com o Delphi 5. Alguma Dica, How To para me passar por favor. Grato inaudio@comdados.com



exemplo c a tua aplicacao ja estiver pronta e voce estiver paradox como banco de dados e a palheta BDE para acesso a dados eu aconcelho voce somente atualiza o ODBC do windows crie as tabelas no mysql e pronto .... nao precisa fazer mais nada
so recriar tua elias usando o driver do mysql

agora c voce estiver comecano do zero use o Zeos 6.0.12 ( muito bom )
o DBExpress e muito comfuso


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar