Search code examples
firebirdods

Open very old firebird file


I have what seems to be very old firebird files available and was asked to get data out of them. I have run various versions of firebird 32/64bits 2.5/3.0/embeded on Windows 10x64. Each time, using ISQL/FlameRobin/DBeaver, I get the error

Not a valid database

Investigating further, I used gstat -h (from F2.5x64) and I got

Wrong ODS version, expected 11, encountered 8224

which makes me think those files are very old or even from Interbase maybe. I followed this russian link http://www.ibase.ru/prevver/ which gives pretty good details about ODS versions, but I can't find out how to open my files.

I am looking for very old versions of firebird to download, or some tool which would tell me which version to use. I also tried FBConvert which was unable to open the file.

Any help here is appreciated ! Thx.


Solution

  • Firebird versions up to 2.5 can open databases of previous Firebird versions and of Interbase 6.0, but not newer or older Interbase databases. Firebird 3 can only open Firebird ODS 12.

    There might be some problems with databases created on different platforms (eg different OS, endianness, bitness, etc).

    However it is likely that the database is not a Firebird database at all, maybe it is a gbak backup file, or maybe it is a totally different database system. I don't think it is a more recent Interbase database, because then gstat would have shown the confusing message "Wrong ODS version, expected 11, encountered 11" (or similar), because the Firebird ODS uses a bit mask to be able to discern itself from Interbase ODS versions.

    If whoever provided you with the database file can access the database on his system and is sure it is a Firebird database, you will need to ask them to create a backup with gbak instead, make sure it is a transportable backup (it is the default though).