MWA Software is pleased to announce that release 2.3.0 of IBX for Lazarus is now available for download from All users are recommended to upgrade to the new release. Please read the changelog before upgrading.

IMPORTANT: the source code tree has been re-organised for IBX 2.3. Please remove all previous copies of the IBX source code tree before installing this release.

This release introduces the IBXServices unit. The IBXServices unit is a re-architectured update of the IBServices unit providing what is intended to be a clearer and easier to use set of IB Services components. See Chapter 10 of the IBX User Guide for more information and the guide to "Firebird Service Management Using IBX". The legacy services components are still available and provided in a separate package. There is no need to update working applications using the older versions except for an additional package dependency.

The update also includes several improvements/additions to TIBExtract and bug fixes to date.

MWA Software is pleased to announce that release 2.2.0 of IBX for Lazarus is now available for download from This is an important update to IBX and all users are recommended to upgrade to the new release. Please read the changelog before upgrade.

The main intent behind the release is to add support for the remaining Firebird 3 features (and some from earlier Firebird releases) that were not supported in release 2.1. This includes:

1. Support for SQL Statements INSERT/UPDATE/DELETE...RETURNING. The first two cases are now able to update the current row for all TIBCustomDataset descendents including TIBTable, using data returned following a row insert or update.

2. INSERT...RETURNING is used to provide support for Firebird "Identity" columns. For example, when used to provide auto-increment primary keys.

3. Firebird "Packages" are now supported by TIBStoredProc and by the SQL Component Editors.

4. Additional Firebird 3 properties are now supported by TIBDatabaseInfo and by the Services API components (e.g. TIBConfigService).

5. Alternative Security Databases are now supported by the Services API Components.

6. TIBExtract now supports DDL Grants and triggers on database objects.

7. A new IBServices component to support online validation of a database (TIBOnlineValidationService).

8. A major new example application (DBAdmin) is now included. This illustrates the use of IBX for Day-to-Day Database Administration tasks including User Management, Backup/Restore and Database Validation and Repair. It is also intended to provided a useable application that users may use directly or incorporate into their own toolsets. It also demonstrates User Management using Firebird 3 virtual tables and SQL statements. Note: this application also requires the standard Lazarus package MemDSLaz.

This release also incorporates recent bug fixes and includes a 33 page guide to the use of IBX for Firebird DBA activities.

IBX for Lazarus may be downloaded from:

or by subversion from:

MWA Software is pleased to announce the release of version 2.1.0 of IBX for Lazarus, including version 1.1.0 of MWA Software's Firebird Pascal API (for Lazarus and Delphi).

This release is primarily a consolidation of bug fixes since release 2.0.3 and also includes a new set of SQL Property Editors using SynEdit and SQL syntax highlighting and featuring:

  • Line Wrap on SQL Token boundaries (on user command)
  • auto-complete table names in drop down list of table names
  • Double click on tablename or field name adds to SQL text

This version of IBX for Lazarus has been tested with Lazarus 1.8.0 and fpc 3.0.4 and upgrade is recommended for all users.

IBX for Lazarus may be downloaded from:

or by subversion from:


MWA Software is pleased to announce the release of its Firebird Pascal Client API package (fbintf) release 1.0.2. The package has been updated to support Delphi Win32 (from Delphi 2010 onwards) in addition to the Free Pascal Compiler (3.0.0 onwards). The package is otherwise functionally identical to release 1.0.1.

The Firebird Pascal Client API package provides common Pascal language bindings to the Firebird API that are independent of the Firebird API version. Both legacy and Firebird 3 APIs are supported. The fbintf package provides the Firebird API in a format where all data types for SQL data, interface parameters and results are native Pascal types, including all parameter blocks and database information. The Pascal API is pitched at a similar level and purpose to the IBPP Firebird API provided to the C++ world. It is a required dependency for version 2 onwards of IBX for Lazarus, and is provided as both a standalone package and as part of IBX2.

The Firebird Pascal API is intended to be simple to use and to place the minimum burden on the API user when it comes to managing the Firebird client library and the various Pascal objects that are created to provide the API. It is implemented as reference counted COM interfaces which, for the API user, are as easy to use as other managed types such as AnsiStrings and dynamic arrays. The user only needs to worry about accessing and using the interface; disposing of interfaces is performed automatically whenever an interface goes out of scope. It is intended to be a full implementation of the Firebird API, including events, services, blobs and arrays.

The package may be downloaded from

A comprehensive user manual fully describing the API is available from