Read the english version

Este driver foi criado para o Delphi/RAD Studio 2007, no qual o driver Interbase nativo deixou de funcionar com o Firebird. Hoje em dia (Delphi XE +) há um driver nativo para acessar o Firebird. O driver abaixo só possui versão compilada para Delphi/RAD Studio 2007 e não está sendo mais mantido. Agradeço a todos que utilizaram e ajudaram a corrigir erros.

Como resultado de uma experiência com a API do Firebird e a recém lançada API DBX4 para Delphi 2007, criei um driver DBX4 para Firebird. Ele suporta todos os tipos de campos do Firebird. Revista Active Delphi O driver foi artigo de capa da revista Active Delphi Edição 53.

Neste artigo Thiago Souza mostra um driver que está surgindo com força total, o TBODBXFB. Este driver consiste em um acesso limpo e sem erros ao Firebird para ser utilizado no RAD Studio 2007.

Bom, não tenho certeza a respeito do ””sem erros””, mas continuo corrigindo os erros reportados pelos usuários.

Entre em Contato/Tire Dúvidas

Fórum: groups.google.com/group/tbodbxfb
Email: thborges at gmail

Como Distribuir o Driver

  1. Adicionar a unit que carrega o driver ao projeto (TBODbxDynalink) ou
  2. Marcar a opção ””Build with runtime packages”” e adicionar o pacote TboDbxNative na lista de packages.
  3. Adicionar a unit que carrega o driver ao projeto (TBODbxDynalink) ou marcar a opção ””Build with runtime packages”” e adicionar o pacote TboDbxNative na lista de packages.
  4. Distribuir os arquivos dbxdrivers.ini e dbxconnections.ini da seguinte maneira:
    • O arquivo dbxdrivers.ini precisa ser distribuído e deve ter duas seções: [Installed drivers] e [TBODBXFB]. Veja este arquivo pronto para ser distribuído.
    • O arquivo dbxconnections.ini pode estar vazio, mas o Framework DBX4 procura por ele.
    • Estes arquivos devem estar no diretório do programa ou no caminho definido na chave HKEY_CURRENT_USERSoftwareBorlandBDS5.0DBExpress, nas entradas ””Driver Registry File”” e ””Connection Registry File”” (Exigência do DBX4).
  5. 4. Distribuir o arquivo tbodbxfb.dll na pasta do programa ou no path do sistema.

ATENÇÃO! Compatibilidade com Firebird 1.5

A partir da versão 0.6 RC 2 foi preciso usar a função TRIM, para mostrar corretamente os campos/parâmetros nos objetos TSQLDataSet e TSQLStoredProc. A função TRIM está disponível nas versões mais recentes do Firebird (2.0, 2.1), mas não na versão 1.5. É nessário declarar a função TRIM, disponível na instalação padrão do Firebird 1.5. Execute o seguinte comando no banco de dados antes de usar a base com o driver:

DECLARE EXTERNAL FUNCTION trim
CSTRING(255)
RETURNS CSTRING(255) FREE_IT
ENTRY_POINT ''''IB_UDF_ltrim'''' MODULE_NAME ''''ib_udf'''';

Download – Delphi 2007

Download – Delphi 2009

Correções/Atualizações

  • 01/11/2008 – Adição de suporte a UTF8
  • 01/11/2008 – Adição de suporte a AutoCommit
  • 01/11/2008 – Correção de problema com tamanho de campos (Propriedade size dos TFields)
  • 01/11/2008 – Correção de problema com campos requeridos (Propriedade Required dos TFields)
  • 01/11/2008 – Correção de erro ””SQL Error SQL error code = -501 Attempt to reclose a closed cursor”” quando abrindo transações explicitas no código
  • 17/09/2008 – Liberada versão para Delphi 2009
  • 17/09/2008 – Corrigido problema de Access Violation aleatório com Varchars
  • 22/07/2008 – Corrigido problema de gravação em campos ARRAY (Muito obrigado à Sertak Akyuz)
  • 21/07/2008 – Corrigido problema de gravação em campos TIME (Muito obrigado à Douglas)
  • 21/07/2008 – Corrigido erro “Update affected more than 1 record.” ao atualizar registros (Obrigado a Arthur ACCL)
  • 21/07/2008 – Corrigido problema ao usar TSQLStoredProc para executar procedure sem parâmetros ou que não retornam dados
  • 08/06/2008 – Corrigido Access Violation ao chamar DBXCommand_GetRowsAffected com comandos DDL (Muito obrigado à Eduardo Tec-Soft)
  • 08/06/2008 – Adicionado suporte a TSQLStoredProc (Muito obrigado à John Hodgson)
  • 08/06/2008 – Adicionado suporte a TSQLDataSet (Muito obrigado à Pablo Bueno)
  • 14/05/2008 – Corrigido Congelamento da IDE com Windows Vista ao abrir conexão (Muito obrigado à Cesar Romero)
  • 14/05/2008 – Corrigido Access Violation ao abrir duas conexões, uma com o driver Interbase e outra com o TBODBXFB.
  • 14/05/2008 – Corrigido erro ao fechar SQLQuery logo após o Commit de uma Transação. (Sequencia: Close/Open/Commit/Close/Open)
  • 04/03/2008 – Corrigido retorno incorreto do tamanho de campo VARCHAR.
  • 04/03/2008 – Corrigida a transação Read Commited para usar a opção isc_tbp_nowait ao invés de isc_tbp_wait.
  • 27/02/2008 – Loop infinito ao fechar a conexão (TSQLConnection.Close) (Muito obrigado à Luiz Henrique Auer)
  • 27/02/2008 – Access violation quando não especificado DriverName=TBODBXFB em TSQLConnection.Params. (Muito obrigado à Luiz Henrique Auer)
  • 14/02/2008 – Adicionado suporte a plataforma .Net
  • 14/02/2008 – Adicionado suporte ao Data Explorer
  • 14/02/2008 – Corrigido problema com transações (Muito Obrigado Luiz Henrique Auer)
  • 14/02/2008 – Correção do tratamento de parametros do tipo ftDate
  • 14/02/2008 – Ajustes no instalador para detectar a pasta onde fica os arquivos .ini do dbExpress
  • 14/02/2008 – Correção de outros “pequenos” problemas
  • 30/01/2008 – Criado instalador do driver
  • 30/01/2008 – Chaves no arquivo dbxdrivers.ini estavam incorretas, impossibilitando a conexão (Muito Obrigado Luciano Pimenta)
Anúncios