ERRO - ADO com firebird
02/02/2006
0
estou apenas testando o uso do ADO com o firebird
tenho o seguinte codigo no evento onCreate de meu form ...
c.ConnectionString:=´Provider=MSDASQL.1;Persist Security Info=False;Data Source=Firebird´; c.Connected:= true; tb.Connection:= c; tb.TableName:= ´TBTESTE´; tb.Active:= true;
se eu carregar os fields no componente [b:8a4a6d9efb]tb[/b:8a4a6d9efb], nao da erro nehum ... mas se eu deixar sem nenhum field ele me da o seguinte erro!
´could not convert variant of type (Null) into type (String)´
pq esse erro???
abraçoss
Rafael Gomes
Posts
02/02/2006
Renato.pavan
[url]http://www.zstyle.dp.ua/eng/download.htm[/url]
Caso queira tirar alguma duvida pode me add no msn
renatopavan2002@hotmail.com
T+
[]´s
Renato
02/02/2006
Rafael Gomes
eu vou testar seu driver, mas quero lembrar que estou usando os drivers de acesso disponibilizados pelo site oficial do firebird ...
ninguem saberia me dizer o pq este erro ocorre? fiz uma pesquisa no forum mas nao adiantou muita coisa ...
gostaria de resolver o problema sem mudar drivers de acesso e etc ...
bem pessoal, é isso!!!
conto com a colaboracao dos colegas de forum!!
[]ss
02/02/2006
Rafael Gomes
uma das solucoes é a proposta do nosso amigo renato e utilizar o driver oledb disponibilizado no link acima ...
e a segunda, é continuar utilizando odbc e ao inves de utilizar o componente adotable, utilizar quaisquer componentes da paleta ADO, pois o problema esta no componente adotable, com adodataset e adoquery funciona perfeitamente ...
se alguem souber de alguma incompatibilidade do adotable com o firebird poste para o beneficio de todos ...
um grande abraço!!!
Rafael :D
02/02/2006
Sourcecode
Provider=MSDASQL.1;Password=masterkey;User ID=SYSDBA;Extended Properties="Driver={Firebird/InterBase(r) driver};Dbname=C:\Arquivos de programas\Firebird\Firebird_1_5\examples\EMPLOYEE.FDB;CHARSET=NONE;Role=NONE"
o adotable funcionou certinho, se continuar aparecendo o erro me passa a extrutura da sua tabela que posso verificar pra você, pode me contactar no msn: sourcecode@terra.com.br entre 18 e 20 h.
Quanto ao driver que nosso amigo indicou não creio que seja uma boa solução, ´OLE DB driver for Interbase/Firebird version 5.0.11, 10.02.2004´, fevereiro de 2004, tá muito desatualizado, pode ocasionar algum problema nas versões acima da 1.03 do firebird, é bem mais seguro usar o driver oficial.
03/02/2006
Rafael Gomes
vou testar sua string de conexao e ver se vai dar algum erro ... e ja adianto a estrutura da minha tabela, nao tem nd demais!!
o sql que gera a tabela é esse aqui
/******************************************************************************/ /**** Generated by IBExpert 03/02/2006 08:31:57 ****/ /******************************************************************************/ SET SQL DIALECT 3; SET NAMES NONE; /******************************************************************************/ /**** Tables ****/ /******************************************************************************/ CREATE TABLE TBTESTE ( CODIGO INTEGER, NUMERO INTEGER, NOME VARCHAR(10) ); /******************************************************************************/ /**** Privileges ****/ /******************************************************************************/
grande abraço!!
03/02/2006
Rafael Gomes
Provider=MSDASQL.1;Password=masterkey;User ID=SYSDBA;Extended Properties="Driver={Firebird/InterBase(r) driver};Dbname=127.0.0.1:C:\Firebird\Firebird_1_5\examples\EMPLOYEE.FDB;CHARSET=NONE;Role=NONE"
interessante sourcecode é que eu vi relatos desse problema em varios foruns, e muitos problemas com usuarios de fora do pais ... só que em nenhum eu encontrei uma solucao diferente de ´ADO nao serve para ser utilizado com firebird, pq sempre ocorrem bugs como esse e o desempenho é muito inferior!!!´
Clique aqui para fazer login e interagir na Comunidade :)