我有两台计算机都运行Firebird(我们称之为A和B)和两个数据库文件(让我们称之为a.fdb和b.fdb),两者都复制到两台计算机上。在B上我收到消息
b.fdb不是有效的数据库 其他文件可以在A文件上工作。
这很容易解释,如果B是旧版本,但它是较新版本(它是FB 2.1,因为这个问题我安装了FB 2.5)。文件a.fdb和b.fdb分别具有ODS 11.1和10.1。看起来FB的新版本不再支持ODS 10.1,我无法相信。但我没有看到其他解释,可以吗?
答案 0 :(得分:3)
尝试备份和恢复数据库。
答案 1 :(得分:2)
我对旧数据库遇到了同样的问题。
就我而言,甚至gbak命令都显示“不是一个有效的数据库”。 (我也尝试过使用FIX_FSS_METADATA选项)
我发现如果数据库是在32位环境中创建的,则无法在一个64位环境中打开。
所以,我必须做的是: - 创建一个32位环境的VM(在我的例子中,我使用Windows XP创建了一个VM) - 将数据库复制到此VM并使用GBAK进行备份 - 将备份文件复制到我的机器(64位) - 使用GBAK运行还原
毕竟,我可以再次打开数据库。
希望它有所帮助!