嵌入式Firebird数据库

3

我使用这个库来连接嵌入式Firebird数据库:

https://github.com/xdenser/node-firebird-libfbclient

在“克隆”和“npm安装”后,我收到了以下错误消息:
con.connectSync('test.FDB','sysdba','masterkey','');
Error: While connecting - unsupported on-disk structure for file D:\FIREBIRD-TEST\test.FDB; found 11.2, support 12.0

我也尝试使用较旧版本的Firebird(2.1.15版)。出现以下错误:

module.js:355
  Module._extensions[extension](this, filename);
                               ^
Error: Das angegebene Modul wurde nicht gefunden.
D:\firebird-test\firebird\build\Release\binding.node
    at Error (native)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at Object.<anonymous> (D:\firebird-test\firebird\firebird.js:1:77)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
1个回答

6
您会收到以下错误信息:
不支持 D:\FIREBIRD-TEST\test.FDB 文件的磁盘结构;发现 11.2,支持 12.0。
这意味着您尝试在 Firebird 3 上打开一个 Firebird 2.5 数据库(ODS 11.2)。Firebird 3 仅支持 On-Disk Structure (ODS) 版本 12。您需要通过使用 Firebird 2.5(+ Firebird 2.5 gbak)备份数据库,并在 Firebird 3 (+ Firebird 3 gbak) 下还原它来升级您的数据库。请参阅 Firebird 3 发布说明中的 ODS (On-Disk Structure) 变更
另一个错误似乎与此无关,如果我猜测 - 我不知道 node.js - 这可能意味着您尝试了 32 位安装而不是 64 位安装(或反之亦然),或者您没有使用 fbembed.dll。在 Firebird 3 中,Firebird 嵌入式是通过 fbclient.dll + engine12.dll 提供的,而 Firebird 2.5 及更早版本则有一个单独的 fbembed.dll。

谢谢Mark!好的,我现在安装了2.5版本而不是3.0。现在我尝试用“lfbembed_ms.lib”替换所有的“flclient_ms.lib”。但在“lib”文件夹中没有embedded.lib。https://github.com/xdenser/node-firebird-libfbclient/blob/master/binding.gyp我在哪里可以找到这个库? - robert
1
据我所知,您需要使用dll而不是.lib。否则,请检查Firebird嵌入式下载包。 - Mark Rotteveel
1
@robert 请查看 http://www.firebirdsql.org/en/firebird-2-5-5/ 中的32位嵌入式或64位嵌入式。 - Mark Rotteveel
1
如果其他方法都失败了,只需将fbembed.dll重命名为fbclient.dll即可;它们具有相同的API。 - Mark Rotteveel
C:\Program Files\Firebird\Firebird_2_5\bin 找到了文件夹...但是替换为 embed 没有起作用。错误仍然是相同的 moudle.js:355。 - robert
显示剩余5条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接