Fabiano Kureck suggested sticking application version information in the checksum slot of the page header.
Mark Rotteveel quite correctly responded. > > > That is very dangerous to do, the same bytes might be reused differently > in a newer ODS. Either use a normal Firebird table to store version info, > or do it outside of the database. Do not hack things in the internal > structure. > The page header is not a good place to stick information. It does change to support new features. However, the database header page has a place that you might be able to use. The format of the header page is defined in ods.h. The first part is fixed. The second part is a string of "clumplets" which are groups of attribute-length-data triplets. By design, Firebird skips over clumplets it doesn't understand. You could write a program that adds a new clumplet of a type undefined by Firebird to hold your version information. It wouldn't survive a gbak backup/restore cycle. The discussion was about finding portable mechanism to identify the application version of a database. Are you aware that databases are not portable across machines with different endian characteristics? Good luck, Ann > > > > ------------------------------ >