Subject Re: [firebird-support] Retrieving relation and field info from system tables
Author Ann Harrison
On Mon, Dec 9, 2013 at 6:58 PM, Christian Gütter <news@...> wrote:


nobody  replied  to  the  questions  I asked about the Firebird system
tables some days ago. Maybe they were a bit too lengthy and specific.

I am wondering if anybody could point me to some documentation
regarding the Firebird system tables instead, as I could not find any.


Probably not in the InterBase books - or the Firebird Book (which I recommend
highly and is available through ibphoenix.com) - is the reason for the very odd
numeric values for datatypes.  Firebird is the open source clone of InterBase.
InterBase was designed to be compatible at the API level with the VAX Rdb
products.  The level of compatibility was such that if you pointed gbak at an
Rdb/VMS database, backed it up, it could be restored as an InterBase database
and all the applications would work if they invoked the InterBase client library
rather than the Rdb client library.  The Rdb products used the VAX/VMS datatype
codes, plus some out-of-band codes for non VMS types like blobs. 

That heritage is also the reason for the obscure error code values - every project
at DEC had a unique hex prefix for its error messages so different products wouldn't
conflict.  The codes look much better in hex than in decimal.

Good luck,

Ann