InterBase is an embeddable relational database management system (RDBMS) known for its low administrative overhead and multi-version concurrency architecture. Its small footprint and near-zero maintenance make it a common choice across desktop applications, mobile devices, field equipment, and independent software products.

This is a spoke article; read it alongside the Database Types Guide for the bigger picture. If you are interested in the open-source descendant of InterBase, see What Is Firebird? as well.

What Is InterBase?

InterBase is a SQL-based relational database that provides transactional integrity (ACID) and supports both client-server and embedded deployment models. Its defining trait is a multi-generational architecture: readers do not block writers and writers do not block readers. This design reduces lock contention under heavy concurrent access.

InterBase is engineered to keep installation and operating costs low. Because it can run against a single database file and needs minimal configuration and self-managing storage, it is frequently embedded inside applications and shipped to end users who never have to hire a dedicated database administrator (DBA).

You can think of InterBase as an "invisible" database: it ships as part of the application, manages itself, and most end users never realize there is a database underneath at all. That profile is the core philosophy that sets it apart from traditional heavyweight server databases. As scale grows you may need a heavier system, but for small to mid-sized scenarios where deployment must stay simple, this simplicity is a real advantage.

A Brief History

InterBase traces its roots to the mid-1980s and Groton Database Systems, founded by Jim Starkey. Starkey is regarded as an early pioneer of multi-version concurrency control (MVCC), and that idea became the cornerstone of InterBase.

The product later came under Borland, which developed it for many years. In 2000, Borland released the source code of the then-current InterBase version as open source; the community forked the Firebird project from that code base. The commercial InterBase line continued and is today owned and maintained by Embarcadero Technologies.

Historically, InterBase has sat within a close ecosystem alongside Embarcadero's development tools such as Delphi and C++Builder. That closeness makes InterBase a natural data-layer candidate for teams building desktop and mobile business applications. Even so, InterBase can be used from other languages through standard SQL and common drivers; it is not locked to a single platform.

Multi-Generational Architecture (MVCC)

InterBase's distinguishing feature is a multi-generational storage model that keeps more than one version of a row. When a transaction updates a row, the old version is not immediately discarded; other transactions keep reading the consistent version they were given. As a result, a long-running report query can execute without blocking concurrent write operations.

A natural consequence of this model is that obsolete row versions must eventually be cleaned up. InterBase performs this housekeeping in the background (garbage collection). You will find the same MVCC philosophy in other capable engines such as PostgreSQL.

  • Fewer read-write conflicts: reports and live transactions run side by side.
  • Consistent snapshot isolation for predictable reads.
  • Long analytical queries do not lock out the write workload.
  • Background collection of old versions keeps file growth in check.

Core Features

  • ACID-compliant transactions and reliable recovery.
  • Stored procedures, triggers, and generators (sequences).
  • Small footprint and low management cost, well suited to embedded deployment.
  • Cross-platform support (Windows, Linux, macOS, and mobile/embedded targets).
  • Database-level encryption and options for encrypted over-the-wire communication.
  • A Change Views mechanism for tracking data changes.
  • Command-line tooling such as isql and gbak for administration and backup.

Editions and Deployment Models

InterBase is offered in several editions tailored to different scenarios, spanning from multi-user, server-based deployments to small footprints embedded on a single device. The table below summarizes the typical positioning.

EditionTypical Use
ServerMulti-user client-server network deployments
DesktopLocal, limited-user applications on a single machine
ToGoPortable/mobile deployment embedded inside the app
IBLiteA lightweight, simplified build for embedded scenarios

SQL and Programmability

Beyond tables, InterBase lets you write server-side business logic with stored procedures and triggers. Below is an example of a table, a generator, and a trigger that assigns keys automatically.

sql
CREATE TABLE customer (
  id        INTEGER NOT NULL PRIMARY KEY,
  name      VARCHAR(100) NOT NULL,
  email     VARCHAR(160),
  created   TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

CREATE GENERATOR gen_customer_id;

SET TERM ^ ;
CREATE TRIGGER customer_bi FOR customer
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
  IF (NEW.id IS NULL) THEN
    NEW.id = GEN_ID(gen_customer_id, 1);
END^
SET TERM ; ^

Stored procedures consolidate multi-step logic on the server and cut down on network round trips. The following selectable stored procedure returns rows filtered by a parameter.

sql
SET TERM ^ ;
CREATE PROCEDURE find_customer (p_name VARCHAR(100))
RETURNS (id INTEGER, name VARCHAR(100), email VARCHAR(160))
AS
BEGIN
  FOR SELECT id, name, email FROM customer
      WHERE name LIKE :p_name
      INTO :id, :name, :email
  DO
    SUSPEND;
END^
SET TERM ; ^

SELECT * FROM find_customer('A%');

Change Views and Data Synchronization

One of InterBase's notable capabilities is the Change Views mechanism. It lets a client track which data has changed since its last query. This is especially valuable for mobile and field applications that work offline and sync periodically: fetching only the rows that changed lowers both network and battery costs.

Such change tracking moves work that you would otherwise handle manually in the application layer, with timestamp or version columns, down into the database and makes consistency easier to maintain.

Security and Encryption

In embedded and field deployments, the database file may physically sit on the end user's device. For that reason InterBase offers options such as database-level encryption and encrypted network communication. User- and role-based authorization controls which account can access which objects.

Administration and Backup Tools

InterBase standardizes administration and backup through command-line tools. isql is the interactive SQL shell, while gbak handles logical backup and restore. The logical backup-and-restore cycle also helps with housekeeping, sweeping out old row versions and compacting the database file.

bash
# Backup
gbak -b -user SYSDBA -password <password> \
     C:\data\app.ib  C:\backup\app.ibk

# Restore
gbak -c -user SYSDBA -password <password> \
     C:\backup\app.ibk  C:\data\app_new.ib

InterBase vs Firebird

Because the two products share a common origin, they are conceptually very similar (generators, triggers, multi-generational architecture). Their licensing and development paths, however, are separate. The table below offers a high-level comparison.

CriterionInterBaseFirebird
License modelCommercial / proprietaryOpen source
Ownership / developmentEmbarcaderoFirebird community / foundation
Common originYes (shared ancestor)Yes (forked in 2000)
Typical positioningProducts needing commercial supportCost-free, community-supported deployment

For a deeper look at the open-source side, see What Is Firebird?, and for another example of the embedded, single-file approach, see What Is SQLite?.

Typical Use Cases

  • Shipped as an embedded database inside independent software vendors' (ISV) products.
  • Field devices, kiosks, and industrial systems that must run without a DBA.
  • Mobile apps that work offline and sync with a server (via Change Views).
  • Small to mid-sized desktop and client-server business applications.

Strengths and Limitations

InterBase's strength is combining low administrative cost with dependable transaction management. On the other hand, teams that need very large-scale distributed workloads or a very broad open-source ecosystem may find other databases a better fit.

  • Plus: Small footprint, embedded-friendly, low maintenance.
  • Plus: Multi-generational architecture reduces read-write conflicts.
  • Plus: Field-oriented features such as encryption and change tracking.
  • Minus: Commercial licensing cost compared with open-source alternatives.
  • Minus: For very large databases, the ecosystem is not as broad as PostgreSQL or Oracle.

Connectivity and Drivers

Applications can connect to InterBase in several ways. Within the Embarcadero ecosystem, data access layers such as FireDAC support InterBase directly; in more general scenarios, standard drivers like ODBC and JDBC come into play. This flexibility keeps InterBase from being the database of just one language or framework.

A connection string typically carries the server name, the path to the database file, and credentials. In embedded scenarios the server and application run on the same device, so the network layer drops out and access happens through the local file. That lowers latency and simplifies deployment.

  • Tight integration with native/Embarcadero data access (e.g. FireDAC).
  • A broad range of desktop and reporting tools via ODBC.
  • Access from Java-based applications via JDBC.
  • Networkless, direct file-based access in embedded mode.

Performance and Best Practices

As with any relational database, much of InterBase's performance comes down to correct indexing and well-written queries. Indexing frequently filtered columns avoids unnecessary full table scans. Using stored procedures to cut down network round trips is another common source of gains.

By the nature of the multi-generational model, accumulating old row versions can bloat the file over time. Regular maintenance (background sweeping and, when needed, compaction through a backup-and-restore cycle) keeps the database healthy. Because long-running transactions can delay the collection of old versions, it matters not to keep transactions open longer than necessary.

Frequently Asked Questions

Is InterBase free?

InterBase is a commercial product, and production use generally requires a license. There is a simplified build for lightweight/embedded scenarios (IBLite), but licensing terms and limits vary by release. If you are looking for a free and open-source alternative, Firebird is the natural first stop.

Are InterBase and Firebird data files compatible?

Although the two products come from a common origin, they have diverged over time, so their file formats and features should not be assumed to be one-to-one compatible. When moving from one to the other, it is safer to plan on transferring data in a portable form (e.g. SQL scripts or an export).

When does InterBase make sense?

If you will ship your product to end users with an embedded database, if there will be no DBA in the field, and if commercial support plus ready-made features (encryption, change tracking) matter to you, InterBase is a strong candidate. If you are targeting a very large, distributed, cost-free stack, weigh other options as well.

If you want to compare other relational options, What Is PostgreSQL? and What Is Firebird? are good starting points. For the holistic view, return to the Database Types Guide.