Deploying dbExpress Database Applications
Go Up to Deploying Database Applications
dbExpress is a set of thin, native drivers that provides fast access to database information.
Contents
Driver packages
You can deploy a dbExpress application either as a stand-alone executable file or as an executable file that deploys associated dbExpress driver packages. However, you always need to deploy the database DLL for whatever databases you are using.
There are separate driver packages for each driver, which eliminates the need for a dbxdrivers.ini file. The Data.DBXCommon.TDBXDriver implementations have default settings for both driver and connection properties. These settings can be overridden by connection property settings. This allows many connection property settings to be minimized to a small number of property settings, such as database, user, and password.
Driver packages also contain driver-specific metadata implementations. Metadata implementations are included in their respective driver package. This makes deployment of dbExpress applications compact, as only driver-specific metadata needs to be deployed. Previously, metadata for all databases was included in the deployment, even when the application was built to run against only one database.
SqlExpr.pas no longer has DbxDefaultDrivers in its uses clause. If driver units are not added to an application's form or data module, the application cannot load the driver. The new driver-specific units that must be added to a uses clause of your application are: dbxmysql, dbxInterbase, dbxdb2, dbxinformix, dbxmssql, dbxoracle, and dbxsybase. This is only needed for statically linked applications.
The following table lists the database packages needed for deployment for executables that are not stand-alone:
dbExpress deployment with driver packages
Database package | When to Deploy |
---|---|
DbxCommonDriver290.bpl |
All applications connecting to databases |
DBXInformixDriver290.bpl |
Applications connecting to Informix databases |
DBXOdbcDriver290.bpl |
Applications connecting to ODBC databases |
DBXInterBaseDriver290.bpl |
Applications connecting to InterBase or To-Go databases |
DBXOracleDriver290.bpl |
Applications connecting to Oracle databases |
DBXDb2Driver290.bpl |
Applications connecting to DB2 databases |
DBXSybaseASADriver290.bpl |
Applications connecting to Adaptive Server Anywhere databases |
DBXSybaseASEDriver290.bpl |
Applications connecting to Sybase databases |
DBXMSSQLDriver290.bpl |
Applications connecting to MSSQL databases |
DBXMySQLDriver290.bpl |
Applications connecting to MySQL 5.1 databases |
DBXFirebirdDriver290.bpl |
Applications connecting to Firebird databases |
DbxClient drivers require DbxClientDriver.bpl to be deployed if packages are used. Otherwise the entire driver can be linked into an executable file, and no additional package or DLL needs to be deployed.
Driver DLLs
For database applications using Dynalink drivers, you cannot deploy a stand-alone executable. Instead, you can deploy associated dbExpress drivers and DLLs with your executable. If you are using DataSnap, you need to include the DataSnap DLL drivers. The following table lists the appropriate DLLs and when to include them:
dbExpress deployment with driver DLLs
Database DLL | When to deploy |
---|---|
No DLL needed |
Applications connecting to Blackfish SQL databases |
dbxadapter.dll |
Adapter layer |
dbxasa.dll |
Applications connecting to Adaptive Server Anywhere databases |
dbxase.dll |
Applications connecting to Sybase databases |
dbxdb2.dll |
Applications connecting to DB2 databases |
dbxfb.dll |
Applications connecting to Firebird databases |
dbxinf.dll |
Applications connecting to Informix databases |
dbxint.dll |
Applications connecting to InterBase or To-Go databases |
dbxmss.dll |
Applications connecting to Microsoft SQL databases with SQL native client 2008 |
dbxmss9.dll |
Applications connecting to Microsoft SQL databases with SQL native client 2005 |
dbxmys.dll |
Applications connecting to MySQL databases |
dbxora.dll |
Applications connecting to Oracle databases |
Midas.dll |
Required by database applications that use client datasets |
See Using dbExpress Components Index for more information about using the dbExpress components.
DBX on Multi-Device Applications
The names of the various database drivers are the same on 32-bit Windows and on 64-bit Windows, but there are separate directories for each individual version. The names of the drivers for macOS, on the other hand, are different from the names on Windows.
The following table lists the appropriate libraries for the macOS platform and when to include them:
dbExpress deployment for Mac with libraries
Database Library | When to deploy |
---|---|
libsqlinf.dylib |
For applications connecting to Informix databases |
libsqlora.dylib |
For applications connecting to Oracle databases |
libsqlasa.dylib |
For applications connecting to Adaptive Server Anywhere databases |
libsqlmys.dylib |
For applications connecting to MySQL databases |
libsqlfb.dylib |
For applications connecting to Firebird databases |
libsqlib.dylib |
For applications connecting to Interbase databases |
libmidas.dylib |
Required by database applications that use client datasets |
If you choose to deploy the dbxconnections.ini and dbxdrivers.ini files, look in the local directory on Macintosh, that is /[user’s home dir]/Library/Preferences, and in /Library/Preferences.
See Also
- dbExpress Supported Database Management Systems
- Deploying Database Applications
- Deploying General Applications
- Deploying Web Applications
- Programming for Varying Host Environments
- Software License Requirements
- Deploying Packages
- Multi-Device Database Applications
- Deploying Multi-Device Applications
- Deployment Manager
- Compiler Versions