A brief comparison between dbms features.
| - | FireBird | Interbase | Oracle | Sqlite | Postgres | SqlServer |
|---|---|---|---|---|---|---|
| Operating System | - | - | - | - | - | - |
| Windows | YES | YES | YES | YES | YES | YES |
| OS X | YES | YES | YES | YES | YES | NO |
| Linux | YES | YES | YES | YES | YES | NO |
| iOS | YES | SOLARIS | YES | YES | YES | NO |
| Android | NO | NO | NO | YES | YES | NO |
| - | FireBird | Interbase | Oracle | Sqlite | Postgres | SqlServer |
|---|---|---|---|---|---|---|
| License | IPL, IDPL | Proprietary | Proprietary | PUBLIC | OPEN SOURCE | Proprietary |
| Latest Stable Version | 2.5.2 | Interbase XE | 12c Rel 1 | 3.8.5 | 9.3.4 | 2014 |
| - | FireBird | Interbase | Oracle | Sqlite | Postgres | SqlServer |
|---|---|---|---|---|---|---|
| Referential Integrity | YES | YES | YES | YES | YES | YES |
| Fine-grained Locking | YES (ORL) | YES | YES (RL) | NO | YES (RL) | YES (RL) |
| Unicode | YES | YES | YES | YES | YES | YES |
| Interface | SQL | SQL | API, GUI, SQL | API, SQL | API, GUI, SQL | GUI, SQL |
| - | FireBird | Interbase | Oracle | Sqlite | Postgres | SqlServer |
|---|---|---|---|---|---|---|
| Max DB Size | Unlimited | Unlimited | Unlimited | 128 TB | Unlimited | 524,272 TB |
| Max Table Size | 32 TB | 32 TB | 4 GB | Limited by File Size | 32 TB | 524,272 TB |
| Max Row Size | 65 KB | 65 KB | 8 KB | Limited by File Size | 1,6 TB | Unlimited |
| Max Columns Per Row | Depends on Cols | Depends on Cols | 1.000 | 32.767 | 250-1600 Depends on Cols | 30.000 |
| Max Blob/Clob Size | 2 GB | 2 GB | 128 TB | 2 GB | 1 GB, 4 TB | 2 GB |
| Max CHAR Size | 32 KB | 32 KB | 32 KB | 2 GB | 1 GB | 2GB |
| Max Number Size | 64 bits | 64 bits | 126 bits | 64 bits | Unlimited | 126 bits |
| Min DATE | 100 | 100 | -4.712 | N/A | -4.713 | 0001 |
| Max DATE | 32768 | 32768 | 9999 | N/A | 5.874.897 | 9999 |
| Max Column Name | 31 | 31 | 30 | Unlimited | 63 | 128 |
| - | FireBird | Interbase | Oracle | Sqlite | Postgres | SqlServer |
|---|---|---|---|---|---|---|
| Temporary Tables | YES | YES | YES | YES | YES | YES |
| Materialized Views | NO | NO | YES | NO | YES | YES |
| Expression Index | YES | NO | YES | NO | YES | YES |
| Partial Index | NO | NO | YES | YES | YES | YES |
| Reverse Index | YES | NO | YES | YES | YES | NO |
| Bitmap Index | NO | NO | YES | NO | YES | NO |
| Full Text | NO | NO | YES | YES | YES | YES |
| Domains | YES | YES | YES | NO | YES | YES |
| Cursor | YES | YES | YES | NO | YES | YES |
| Trigger | YES | YES | YES | YES | YES | YES |
| Function | YES | YES | YES | NO | YES | YES |
| Procedure | YES | YES | YES | NO | YES | YES |
| External Routine | YES | YES | YES | YES | YES | YES |
| TableSpaces | NO | NO | YES | NO | YES | FILEGROUP |
| Sequences | YES | YES | YES | NO | YES | YES |
| Computed Columns | YES | YES | YES | NO | NO | YES |
| - | FireBird | Interbase | Oracle | Sqlite | Postgres | SqlServer |
|---|---|---|---|---|---|---|
| Union | YES | YES | YES | YES | YES | YES |
| Intersect | ? | ? | YES | YES | YES | YES |
| Except | ? | ? | YES | YES | YES | YES |
| Inner Join | YES | YES | YES | YES | YES | YES |
| Outer Join | YES | YES | YES | LEFT | YES | YES |
| Inner Select | YES | ? | YES | YES | YES | YES |
| Merge Join | YES | ? | YES | NO | YES | YES |
| Blob/Clob | YES | YES | YES | YES | YES | YES |
| CTE | YES | ? | YES | YES | YES | YES |
| Windowing | YES | ? | YES | NO | YES | YES |
| Parallel Query | ? | ? | YES | NO | YES | YES |
| - | FireBird | Interbase | Oracle | Sqlite | Postgres | SqlServer |
|---|---|---|---|---|---|---|
| Integer | BIGINT, INTEGER, SMALLINT | BIGINT, INTEGER, SMALLINT | NUMBER | INTEGER (64 bit) | SMALLINT, INTEGER, BIGINT | TINYINT, SMALLINT, INT, BIGINT |
| Float | FLOAT, DOUBLE PRECISION | FLOAT, DOUBLE PRECISION | BINARY_FLOAT, BINARY_DOUBLE | REAL (64 bit) | REAL, DOUBLE PRECISION | FLOAT, REAL |
| Decimal | DECIMAL, NUMERIC | DECIMAL, NUMERIC | NUMBER | N/A | DECIMAL, NUMERIC | NUMBERIC, DECIMAL, SMALLMONEY, MONEY |
| String | CHAR, VARCHAR, NCHAR, NVARCHAR | CHAR, VARCHAR, NCHAR, NVARCHAR | CHAR, VARCHAR2, CLOB, NCLOB, NVARCHAR2, NCHAR, LONG | TEXT | CHAR, VARCHAR, TEXT | CHAR, VARCHAR, TEXT, NCHAR, NVARCHAR, NTEXT |
| Binary | BLOB | BLOB | BLOB, RAW, LONG RAW, BFILE | BLOB | BYTEA | BINARY, VARBINARY, IMAGE, FILESTREAM |
| Date/Time | TIMESTAMP, TIME, DATE | TIMESTAMP, TIME, DATE | DATE, TIMESTAMP, INTERVAL | N/A | DATE, TIME, TIMESTAMP, INTERVAL | DATE, DATETIMEOFFSET, DATETIME2, SMALLDATETIME, DATETIME, TIME |
| Boolean | CHAR(1) | BOOLEAN | N/A | N/A | BOOLEAN | BIT |
| Other | SPATIAL, IMAGE, AUDIO, VIDEO, DICOM, XMLType | N/A | ENUM, POINT, LINE, LSEG, BOX, PATH, POLYGON, CIRCLE, CIDR, INET, MACADDR, BIT, UUID, XML, JSON, Arrays, Composites, Ranges, Custom | CURSOR, TIMESTAMP, HIERARCHYID, UNIQUEIDENTIFIER, SQL_VARIANT, XML, TABLE |
| - | FireBird | Interbase | Oracle | Sqlite | Postgres | SqlServer |
|---|---|---|---|---|---|---|
| Range Partitioning | NO | NO | YES | NO | YES | YES |
| Hash Partitioning | NO | NO | YES | NO | YES | NO |
| Composite Partitioning | NO | NO | YES | NO | YES | NO |
| List Partitioning | NO | NO | YES | NO | YES | NO |
| Expression Partitioning | NO | NO | NO | NO | YES (tr) | ? |
| - | FireBird | Interbase | Oracle | Sqlite | Postgres | SqlServer |
|---|---|---|---|---|---|---|
| Multiple DBs | YES | YES | NO | YES | YES | YES |
| Multiple Schemas | NO | NO | YES | NO | YES | YES |