12. Utilizando InterBase/Firebird com dbExpress
Neste capítulo, veremos como utilizar o InterBase e o Firebird com os componentes de acesso a dados DataBase Express (DBX). Os componentes DataBase Express estão presentes no Delphi desde a versão 6. Utilizando os componentes DBX podemos desenvolver aplicações para plataforma Win32, .NET e cross-platform (CLX).
Através dos 7 componentes disponíveis na paleta dbExpress, podemos acessar diversos bancos de dados, como: Oracle, DB2, SQL Server, MySQL, InterBase e Firebird. Junto com a instalação do Delphi, temos disponíveis vários drivers para acesso a vários bancos de dados presentes no mercado.
Independente disso, você pode baixar da Internet diversos outros drivers para uma grande variedade de bancos de dados. Para o Firebird, por exemplo, você não precisa mais utilizar o driver disponível para o InterBase, visto que, hoje já existe para download driver DBX específico para o Firebird.
Nota: Você pode baixar o driver do DBX para Firebird a partir do site oficial do banco de dados.
Ao contrário dos componentes IBX e BDE, o DBX requer o uso de dois outros componentes para fazer a manipulação dos dados. Em conjunto com o DataSetProvider e ClientDataSet (Data Access) podemos criar as mais diversas aplicações com as mais diferentes arquiteturas.
Os componentes dbExpress possuem uma arquitetura montada para trabalharem com os componentes DataSnap (antigo Midas) em aplicações de duas e/ou três camadas. Os ResultSet retornados pelos componentes DBX são read-only e unidirecionais, isso é, para que possamos ter a funcionalidade de navegação dos registros e para que possamos alterá-los devemos utilizar o DataSetProvider e ClientDataSet.
O DataSetProvider, cria pacotes contendo os dados disponibilizados pelos Datasets DBX e envia esses pacotes para o ClientDataSet, o qual armazena e manipula os dados em memória. Todas as alterações efetuadas ficam armazenadas em memória pelo ClientDataSet, onde, a partir do método ApplyUpdates retorna as alterações para o DataSetProvider, para que o mesmo crie as instruções SQL e aplique-as no banco de dados.
Veja na Figura 12.1 a paleta de componentes dbExpress presente no Delphi 2005.
Figura 12.1. Paleta dbExpress contendo os sete componentes
Veja uma pequena descrição dos componentes presentes na paleta dbExpress: