Using dbExpress in Delphi Database Applications

Computer key board with optical fibres which are used to carry images, or high volumes of data
Getty Images/Andrew Brookes

One of the strengths of Delphi is the support for many databases using several data access technologies: the BDE, dbExpress, InterBase Express, ADO, Borland Data Providers for .NET, to name a few.

What is dbExpress?

One of the data connectivity options in Delphi is dbExpress. In short, dbExpress is a light-weight, extensible, cross-platform, high-performance mechanism for accessing data from SQL servers. dbExpress provides connectivity to databases for the Windows, .NET and Linux (using Kylix) platforms.
Initially designed to replace the BDE, dbExpress (introduced in Delphi 6), allows you to access different servers - mySQL, Interbase, Oracle, MS SQL Server, Informix.
dbExpress is extensible, in that it is possible for third-party developers to write their own dbExpress drivers for various databases.

One of the most significant features of dbExpress lies in the fact that it accesses databases using unidirectional datasets. Unidirectional datasets do not buffer data in memory -- such a dataset cannot be displayed in a DBGrid. To build a user interface using dbExpress you will need to use two more components: TDataSetProvider and TClientDataSet.

How to Use dbExpress

Here's a collection of tutorials and articles on building database applications using dbExpress:

dbExpress Draft Specification
An early dbExpress specifications draft. Worth a read.

Introduction to ClientDataSets and dbExpress
A TClientDataset is a part of any dbExpress applications. This paper introduces dbExpress and the power of ClientDataSets to people who have been using the BDE and are afraid to migrate.

Additional dbExpress Driver Options
A list of third-party drivers available for dbExpress

Migrating BDE Applications to dbExpress
This PDF goes into extensive detail on issues you may face when migrating applications from BDE components to dbExpress components. It also provides information on performing the migration.

Create a Reusable Component to Connect Delphi 7 to DB2 with dbExpress
This article shows you how to use IBM DB2 as the database for applications written with Borland Delphi 7 Studio and dbExpress. Specific topics include how to connect the seven dbExpress components to DB2 and use them to build visual forms on top of database tables.