[firebase-br] Firebird ODBC

Eduardo Jedliczka (TeamFB) jedyfb em gmail.com
Sáb Jun 17 19:58:51 -03 2006


ADO é uma camada "abstrata" (universal) para acessar fontes de dados de 
tipos (e limitações) diferentes.

Tecnicamente ela é utilizada para Acessar de forma (mais ou menos) 
padronizada providers de tecnologias diferentes.

Sendo assim, pode-se utilizar ADO para acessar uma fonte de dados ODBC ou 
OLEDB ou até mesmo bases ACCESS (neste caso nativamente sem qualquer um dos 
dois).

Se você deseja acessar uma base FireBird via ADO, deve-se configurar o ODBC 
(eu prefiro o driver da IBPhoenix que funciona muito bem, e também pelo fato 
de que eu não conheça um provider OLEDB para FireBird)!!! Isto vale para 
Delphi, para ASP, e para outros ambientes de desenvolvimento.

Já tentei várias vezes criar um instalador (seja via InnoSetup, via Delphi, 
ou outras formas) que crie "corretamente" uma conexão ODBC no Windows (sei 
que na Família 9x o funcionamento é diferente da família NT/2000/XP). Mas já 
descobri que para que isto funcione, é necessário instalar MUITAS coisas, 
como Banco de Dados, Driver ODBC, MDAC, Run-Time do Visual C, algumas Dll 
Atualizadas do Windows, Atualizador do ComCtrls, além das chaves do registro 
e do próprio software.

Ahhh, e quanto ao erro "unavailable database", ele ocorre de duas formas, 
onde a mais comum é o FireBird NÃO estar inicializado, e a outra é ter 
problemas no "registro" da Fonte ODBC.

======================
Eduardo Jedliczka
Membro do TeamFB - FireBase
Apucarana - PR
======================

----- Original Message ----- 
From: "Otto" <ottofuch em terra.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Friday, June 16, 2006 3:43 PM
Subject: Re: [firebase-br] Firebird ODBC


Quanto ao Delphi, não sei e quanto ao Firebird também não sei. Mas
"OLEDB is designed to be the successor of ODBC".
(...)
"OLEDB is a COM-based set of object-oriented interfaces, and thus, for a
large proportion of the programming community it is too complex to use, or
is not suitable because they use programming languages which don't have
access to custom COM interfaces. ADO ist the high-level model that most
people will use, because it provides a dual-interface, allowing access from
Visual Basic and scripting languages. (...)
(ADO 2.1 Programmer's Reference - David Sussman, editora Wrox).

Quanto ao Delphi, No Developer's Guide Delphi 6 da Borland que acompanhou a
caixa quando comprei o Delphi 6 Professional, tem o capítulo o capítulo 21
Working with ADO components  e na pága 21-2 Connecting to ADO data stores
consta:
"Delphi ADO-base applications use Microsoft ActiveX Data Objectos (ADO) 2.1
to interact with an OLE DB provider that connects to a data store and
accesses its data. One of the items a data store can represent is a
database. An ADO-based application requires that ADO 2.1 be installed on the
client computer. ADO and OLE DB is supplied by Microsoft and installed with
Windows".
O ADO é representado pelo arquivo MDAC e a sua configuração pode ser
verificada pelo CC Component Checker.
No Firebird Book da Helen Borrie consta na página 930 (na edição original em
inglês):
"Several abstraction layers are available for pluggin pages into Firebird,
including ADODB classes (http://freshmeat.net/projects/adodb) and more
compact ezSQL (http://php.justinvincent.com. ... "
Assim, o assunto tem que ser estudado pelos interessados, o que, no meu
entender, vai exigir um certo esforço.
Pessoal não uso Delphi nem mais C++ Builder, e sim Java, com interface JDBC.
Assim, não vou poder fazer parte desse estudo.
[]´s
Otto

----- Original Message ----- 
From: "Marcio André" <marciokviatkovski em yahoo.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Friday, June 16, 2006 9:06 AM
Subject: Re: [firebase-br] Firebird ODBC


Olá Otto,

Segundo o que eu sei (quase nada! ;)), o ADO (ADODB) não se conecta
diretamente a nenhum banco de dados.
Ele é apenas uma camada de abstração de dados, ou seja, funciona
intermediariamente entre a aplicação e a fonte de dados, fornecendo recursos
como recodset (igual aos datasets do Delphi), acesso a view, sp e outras
coisas mais.
Para que o ADO se conecte ao banco é preciso um drive ODBC ou um provedor
OLEDB que faça a ponte entre o banco (que pode ser qualquer banco, desde que
exita o drive certo) e a aplicação.
Esta é a minha visão de funcionamento da coisa. Posso estar errado, mas nos
nossos programas sempre funcionou dessa maneira.
Mas, em todo o caso, se alguém souber de alguma forma de conectar o ADO
diretamente ao Firebird sem o maldito do ODBC, por favor, contribua
conosco...

[]'s
Marcio.


----- Original Message ----- 
From: "Otto" <ottofuch em terra.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Wednesday, June 14, 2006 7:51 PM
Subject: Re: [firebase-br] Firebird ODBC


Porque quer usar ODBC se estiver usando ADODB?
[]´s
Otto
----- Original Message ----- 
From: "Murilo Bento" <murilo em cprinformatica.com.br>
To: <lista em firebase.com.br>
Sent: Wednesday, June 14, 2006 5:12 PM
Subject: Re: [firebase-br] Firebird ODBC


> Sim era isso, naõ estava registrado o Driver no painel de controle,  isso
eu
> já arrumei, mas agora o erro é outro heheheh
> Exception: Microsoft OLE DB Provider for ODBC Drivers: [ODBC Firebird
> Driver]unavailable database
>
> O que pode ser? O caminho da base? ela está assim
> Ip do servidor:/base/baseteste/nomebaseteste.fdb
>
> Pelomenos nos Windows 2000 e XP funciona........ ahhhhhhhhh Win
> 98..................
>
> "Silvio Ribeiro" <silviojgfr em gmail.com>
> escreveu na mensagem news:e6pnv4$bv8$1 em sea.gmane.org...
> Qd eu trabalho com ODBC, eu costumo usar o JET, ja q nao precisa criar
> aquelas configuracoes la no ODBC do painel de controle.
>
> Esse erro ai ocorre qd vc tenta acessar uma fonte de dados q nao foi
> criada la no painel de controle... Pelo menos nas vezes q aconteceu aqui
> foi por isso.
>
> A tua instalacao está criando isso? O DataSource Name (Node da fonte de
> dados) la no painel de controle?
>
> Nao sei se fica mais facil e se vc pode, mas tenta usar o Microsoft JET
> 4.0 Ole Db Provider. Com ele nao precisa criar essas configuracoes no
> painel de controle, basta passar o caminho tipo \\servidor\path_do_BD.
>
> De qualquer forma, ve se sua instalacao está criando o nome da fonte de
> dados corretamente (ferramentas administrativas > Fontes de Dados (ODBC).
>
> Abraços,
>
> Silvio Ribeiro
>
> Murilo Bento wrote:
> > o erro que da é este:
> >
> > Exception: Microsoft OLE Db Provider for ODBC Drivers: [Microsoft][ODBC
> > Driver Manager] Nome da fonte de dados não encontrado e nenhum driver
> > padrão
> > especificado.
> >
> > Aqui está a imagem do erro:
> > http://img153.imageshack.us/my.php?image=erroconexao4sb.png
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
>
>
>


----------------------------------------------------------------------------
----


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa



______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa






_______________________________________________________
Yahoo! doce lar. Faça do Yahoo! sua homepage.
http://br.yahoo.com/homepageset.html



______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa




______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço 
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa 





Mais detalhes sobre a lista de discussão lista