28 June 2023

I am happy to announce the release of “Firebird External Table Generator” (ext-table-gen for short).

“Firebird External Table Generator” is a commandline tool to transform RFC 4180 CSV files to Firebird external table files (a binary format for external table data).

External tables are a good way for bulk-loading data into Firebird. Unfortunately, external tables use a fixed-width binary format, and not (more) standard formats like CSV. It is not always easy to create an appropriate external table file, and this is where ext-table-gen can be used.

At a high level, ext-table-gen provides the following features:

  • Derive a CHAR-based external table definition (i.e. a CREATE TABLE statement and a configuration for ext-table-gen) from a CSV file

  • Transform a CSV file to an external table file (either based on the CSV file itself, or based on a configuration file)

The current version only supports CHAR columns, which makes the generated file essentially a fixed-width text format. Future versions may introduce support for additional column types.

You can find the 1.0 release at ext-table-gen v1.0.

Documentation and release notes can be found on https://mrotteveel.github.io/ext-table-gen/.

The project itself is hosted on https://github.com/mrotteveel/ext-table-gen.