Firebirdのバージョン取得方法
現在のFirebirdのバージョンと、データベースのバージョンを同時に取得することができる。以下ではJaybirdデータベースドライバを使用するものとする。
JDBCによる取得方法
import org.firebirdsql.jdbc.*;
....
java.sql.Connnection conn ...
FBDatabaseMetaData md = conn.getMetaData();
return
"ODS-Ver:" + md.getOdsMajorVersion() + "." + md.getOdsMinorVersion() + ", " +
"Firebird-Ver:" + md.getDatabaseMajorVersion() + "." + md.getDatabaseMinorVersion();
例えば以下になる。
ODS-Ver:11.2, Firebird-Ver:2.5
※ODSとはOn-Disk-Structureのことで、ディスク上の構造のこと。
FirebirdのバージョンとODS
FirebirdのバージョンとODSの関係については、All Firebird and InterBase On-Disk-Structure (ODS) versionsに記述がある。
主なところを拾うと、以下である。
ODS | Firebird | 他にどのODSをサポートするか |
---|---|---|
11.1 | 2.1 | 10.x/11.0 |
11.2 | 2.5 | 10.x/11.x |
12.0 | 3.0 | 無し |
※すなわち、Firebird3で以前のデータベースを使うには、いったんバックアップを行い、それをリストアする必要がある。
gstatによるバージョン取得とデータベースの移動
JDBC接続によらずにバージョンを取得する方法については、How to easily determine version of .fdb-file (Firebird database)に説明がある。