Limits of the Firebird Database
The significant restrictions are:
Max indexes per table is 255 in Firebird 1.5x and 64 in Firebird 1.0x.
Max size of an index key is 254 bytes and less for compound keys in Firebird V1.x. Firebird 2 and future versions allow keys up to 25% of the size of a database pages. Character columns that sort in dictionary order rather than byte order require more than one byte per character to represent their collating sequence. As a result, the effective limit on key size may be as low as 90 bytes for some languages. Version 2 will lift this restriction.
Max number of conjuncts is 255. A conjunct is a pair of conditions combined with an AND.
WHERE F1 = 1 and F2 >= 2 and F2 = 5
is 3 conjuctions, but:
WHERE F1 = 1 or F2 >= 2 or F2 = 5
is 1 conjunction
Maximum size of a table is approximately 37Gb of compressed data, not depending on the size of the records, record count or page size. Version 2 does not have this restriction.
Metadata names are restricted to 31 characters.
The maximum size of a blob is 2Gb.
Rows are restricted to 32767 bytes.
A database can contain no more than 32767 tables.
The maximum size for a database is over 30 terabytes.
Maximum number of elements in an IN list is 1499.
select name from phones where extension in (0000, 0001, 0002 ... 1499);