Fyracle

Fyracle is a special version of the open source Firebird database which supports Oracle PL/SQL syntax, to ease porting of Oracle applications to open source.

Fyracle comprises three parts:

  1. some enhancements to the Firebird database, such as support for derived and temporary tables, hierarchical queries and a PL/SQL execution engine, and support for Oracle specific semantics, such as an empty string equalling a null value and vice versa in certain contexts;
  2. a connector library, which translates Oracle specific syntax to something that Firebird can understand. An example is modifying the (+) join syntax to ANSI style joins;
  3. a PL/SQL compiler that takes PL/SQL source code, such as stored procedures and functions or trigger bodies, and translates this to a byte-code that the PL/SQL execution engine mentioned above can understand.

Fyracle can currently correctly execute all examples that come with Oracle 7, and new features are added all the time. The goal is to be fully Oracle 9 compatible.

There are two typical use cases for Fyracle. The first is using Fyracle to run the open source ERP/CRM system "Compiere". Running Compiere with Fyracle has lower hardware demands than using Oracle and is much easier to manage for the typical Compiere user. The other typical use case is as the database back end for mid-market two-tier applications. Examples are applications that have been developed in Visual Basic, Delphi or Oracle's Developer 2000 and that are easier to distribute and maintain with Fyracle than with the latest releases of Oracle.