FireDAC - Components

FireDAC comes with a lot of non visual database components, these components could be divided into below categories :
- FireDAC Core Components.
- FireDAC Driver Link Components.
- FireDAC Monitor Link Components.
- FireDAC UI Components.
- FireDAC Service Components.
- FireDAC ETL Components.
- FireDAC NoSQL Components.
Now we will deep dive describing the components available for each category.
FireDAC Core Components
The following classes are the FireDAC core components
| Name | Platforms | Description |
|---|---|---|
| TFDManager | All | Responsible for connection definitions and connections management. |
| TFDConnection | All | Responsible for connection establishment with a DBMS. |
| TFDTransaction | All | Responsible for connection transaction management. |
| TFDCommand | All | Responsible for executing SQL commands. |
| TFDTableAdapter | All | Binds TFDCommand and TFDMemTable. |
| TFDSchemaAdapter | All | Binds several datasets into a single in-memory storage and builds a centralized change log. |
| TFDMemTable | All | Implements an in-memory dataset. |
| TFDQuery | All | Implements a dataset that can execute SQL queries . |
| TFDStoredProc | All | Implements a dataset that can execute server-side stored procedures. |
| TFDTable | All | Implements a dataset that works with single database tables. |
| TFDUpdateSQL | All | Applies updates on behalf of queries or stored procedures that cannot post updates directly. |
| TFDBatchMove | All | Responsible for data movement between different data sources. |
| TFDScript | All | Implements a SQL script engine that can execute a series of SQL queries. |
| TFDMetaInfoQuery | All | Implements a dataset that can execute meta-info queries. |
| TFDEventAlerter | All | Responsible for handling the database event notifications. |
| TFDLocalSQL | All | Implements the Local SQL engine, which can execute the SQL queries with TDataSet descendants as data sources. |
Driver Link Components
FireDAC supports various databases maintaining their inherent features. To connect with various databases, FireDAC has provided one driver link component per supported database.
| Name | Platforms | Description |
|---|---|---|
| TFDPhysADSDriverLink | Win32, Win64, Linux | Use TFDPhysADSDriverLink to link the Advantage Database Server driver (which you should set up) to an application. |
| TFDPhysASADriverLink | Win32, Win64, Linux, macOS | Use TFDPhysASADriverLink to link the Sybase SQL Anywhere driver (which you should set up) to an application. |
| TFDPhysDSDriverLink | Win32, Win64, Linux, macOS, iOS, Android | Use TFDPhysDataSnapDriverLink to link the Multi-Tier DataSnap driver (which you should set up) to an application. |
| TFDPhysDB2DriverLink | Win32, Win64, Linux | Use TFDPhysDB2DriverLink to link the IBM DB2 driver (which you should set up) to an application. |
| TFDPhysFBDriverLink | Win32, Win64, Linux, macOS | Use TFDPhysFBDriverLink to link the Firebird driver (which you should set up) to an application. |
| TFDPhysIBDriverLink | Win32, Win64, Linux, macOS, iOS, Android | Use TFDPhysIBDriverLink to link the Interbase driver (which you should set up) to an application. |
| TFDPhysInfxDriverLink | Win32, Win64, Linux | Use TFDPhysInfxDriverLink to link the Informix driver (which you should set up) to an application. |
| TFDPhysMSAccessDriverLink | Win32, Win64 | Use TFDPhysMSAccessDriverLink to link the Microsoft Access driver (which you should set up) to an application. |
| TFDPhysMSSQLDriverLink | Win32, Win64, Linux, macOS | Use TFDPhysMSSQLDriverLink to link the Microsoft SQL Server driver (which you should set up) to an application. |
| TFDPhysMySQLDriverLink | Win32, Win64, Linux, macOS | Use TFDPhysMySQLDriverLink to link the MySQL Server driver (which you should set up) to an application. |
| TFDPhysODBCDriverLink | Win32, Win64, Linux, macOS | Use TFDPhysODBCDriverLink to link the ODBC bridge driver to an application. |
| TFDPhysOracleDriverLink | Win32, Win64, Linux, macOS | Use TFDPhysOracleDriverLink to link the Oracle Database driver (which you should set up) to an application. |
| TFDPhysPgDriverLink | Win32, Win64, Linux, macOS | Use TFDPhysPgDriverLink to link the PostgreSQL driver (which you should set up) to an application. |
| TFDPhysSQLiteDriverLink | Win32, Win64, Linux, macOS, iOS, Android | Use TFDPhysSQLiteDriverLink to link the SQLite driver (which you should set up) to an application. |
| TFDPhysTDataDriverLink | Win32, Win64, Linux, macOS | Use TFDPhysTDataDriverLink to link the Teradata Database driver (which you should set up) to an application. |
| TFDPhysTDBXDriverLink | Win32, Win64, macOS, iOS, Android | Use TFDPhysTDBXDriverLink to link the dbExpress v 4 bridge driver to an application. |
| TFDPhysMongoDriverLink | Win32, Win64, macOS | Use TFDPhysMongoDriverLink to link the MongoDB driver to an application. |
FireDAC Monitor Link Components
To enforce tracing capabilities, applications can use one of the monitor components in the following table.
| Name | Platforms | Description |
|---|---|---|
| TFDMoniFlatFileClientLink | All | Use TFDMoniFlatFileClientLink to link the file tracing capabilities (which you should set up) to an application . |
| TFDMoniRemoteClientLink | Win32, Win64 | Use TFDMoniRemoteClientLink to link the FDMonitor tracing capabilities (which you should set up) to an application . |
| TFDMoniCustomClientLink | All | Use TFDMoniCustomClientLink to link custom tracing capabilities (which you should set up) to an application . |
FireDAC UI Components
Most of the applications use TFDGUIxWaitCursor and TFDGUIxLoginDialog.
| Name | Platforms | Description |
|---|---|---|
| TFDGUIxAsyncExecuteDialog | VCL, FireMonkey | This dialog shows an SQL query execution progress . |
| TFDGUIxErrorDialog | VCL, FireMonkey | This dialog displays the FireDAC exceptions . |
| TFDGUIxLoginDialog | VCL, FireMonkey | This dialog allows the users to enter their DB credentials. |
| TFDGUIxScriptDialog | VCL, FireMonkey, Console | This dialog shows an SQL script execution progress . |
| TFDGUIxWaitCursor | VCL, FireMonkey, Console | This component allows the control of the wait cursor. |
FireDAC Service Components
An application uses service components to add a specific DBMS facility support
| Name | Platforms | Description |
|---|---|---|
| TFDADSBackup | Win32, Win64, Linux | This class implements the Advantage backup database service. |
| TFDADSRestore | Win32, Win64, Linux | This class implements the Advantage service, by restoring a database from a backup. |
| TFDADSUtility | Win32, Win64, Linux | This class implements the Advantage table utilities. |
| TFDASABackup | Win32 | This class implements the SQL Anywhere backup database service. |
| TFDASAValidate | Win32 | This class implements the SQL Anywhere database validate service. |
| TFDIBBackup | Win32, Win64, Linux, macOS, iOS, Android | This class implements the Firebird/InterBase backup database service. |
| TFDIBConfig | Win32, Win64, Linux, macOS, iOS, Android | This class implements the Firebird/InterBase setting database properties service. |
| TFDIBInfo | Win32, Win64, Linux, macOS, iOS, Android | This class implements the Firebird/InterBase service to query the service manager. |
| TFDIBRestore | Win32, Win64, Linux, macOS, iOS, Android | This class implements the Firebird/InterBase service, by restoring a database from a backup. |
| TFDIBSecurity | Win32, Win64, Linux, macOS, iOS, Android | This class implements the Firebird/InterBase database security management service. |
| TFDIBValidate | Win32, Win64, Linux, macOS, iOS, Android | This class implements the Firebird/InterBase database validate and repair service. |
| TFDIBSDump | Win32, Win64, Linux, macOS, iOS, Android | This class implements the InterBase-only database dump service. |
| TFDFBNBackup | Win32, Win64, Linux, macOS | This class implements the Firebird-only backup database service. |
| TFDFBNRestore | Win32, Win64, Linux, macOS | This class implements the Firebird-only restore database service. |
| TFDFBTrace | Win32, Win64, Linux, macOS | This class implements the Firebird database trace service. |
| TFDMSAccessService | Win32, Win64 | This class implements the Microsoft Access database. It also creates, drops, compacts, and repairs the services. |
| TFDOracleAdmin | Win32, Win64, Linux, macOS, iOS, Android | This class implements a service to manage an Oracle database instance. |
| TFDSQLiteBackup | Win32, Win64, Linux, macOS, iOS, Android | This class implements SQLite backup. It also restores and copies the database functionality. |
| TFDSQLiteCollation | Win32, Win64, Linux, macOS, iOS, Android | This class implements the custom SQLite collation. |
| TFDSQLiteFunction | Win32, Win64, Linux, macOS, iOS, Android | This class implements the custom SQLite function. |
| TFDSQLiteSecurity | Win32, Win64, Linux, macOS, iOS, Android | This class allows you to manage the SQLite database encryption. |
| TFDSQLiteValidate | Win32, Win64, Linux, macOS, iOS, Android | This class implements the SQLite database validate service. |
| TFDSQLiteRTree | Win32, Win64, Linux, macOS, iOS, Android | This class implements the custom SQLite RTree. |
FireDAC ETL Components
An application uses the ETL components for data movement between different types of data sources and the data destinations.
| Name | Platforms | Description |
|---|---|---|
| TFDBatchMove | Win32, Win64, macOS, iOS, Android, iOS Simulator | This class implements the engine to process the data movement between different data source and destinations. |
| TFDBatchMoveTextReader | Win32, Win64, macOS, iOS, Android, iOS Simulator | This class defines a data source reader using a text file. |
| TFDBatchMoveTextWriter | Win32, Win64, macOS, iOS, Android, iOS Simulator | This class defines a data target writer using a text file. |
| TFDBatchMoveDataSetReader | Win32, Win64, macOS, iOS, Android, iOS Simulator | This class defines a source dataset. |
| TFDBatchMoveDataSetWriter | Win32, Win64, macOS, iOS, Android, iOS Simulator | This class defines a destination dataset. |
| TFDBatchMoveSQLReader | Win32, Win64, macOS, iOS, Android, iOS Simulator | This class connects to the database that contains the data to copy. |
| TFDBatchMoveSQLWriter | Win32, Win64, macOS, iOS, Android, iOS Simulator | This class connects to the database where you want to copy the data. |
FireDAC NoSQL Components
An application uses the NoSQL components to work with NoSQL document databases.
| Name | Platforms | Description |
|---|---|---|
| TFDMongoDataSet | Win32, Win64, macOS | This class implements aa dataset that can be attached to a MongoDB cursor. |
| TFDMongoQuery | Win32, Win64, macOS | This class implements a dataset that can execute MongoDB queries. |
| TFDMongoPipeline | Win32, Win64, macOS | This class allows to execute a MongoDB pipeline. |


