2016-04-28 5 views
3

Я использую этот LIB для подключения встроенного FIREBIRD базы данных:Embedded Firebird базы данных

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

после "клонирования" и "НОЙ установкой" я получил следующее сообщение об ошибке:

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 

I также попробуйте использовать более старую версию 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) 

ответ

4

Вы получаете эту ошибку:

unsupported on-disk structure for file D:\FIREBIRD-TEST\test.FDB; found 11.2, support 12.0

Это означает, что вы пытаетесь открыть Firebird 2.5 базы данных (ODS 11.2) на Firebird 3. Firebird 3 поддерживает только на диске Структура (ODS) версии 12. Вам нужно будет обновить свою базу данных, выполнив ее с помощью Firebird 2.5 (+ Firebird 2.5 gbak) и восстановив его под Firebird 3 (+ Firebird 3 gbak). См. Также ODS (On-Disk Structure) Changes in the Firebird 3 release notes.

Другая ошибка кажется несвязанной, и если бы мне пришлось угадать - я не знаю, что node.js - может означать, что вы попытались установить 32-разрядную версию вместо 64-разрядной установки (или наоборот) или что вы не использовали fbembed.dll. В Firebird 3 встроенная Firebird поставляется через fbclient.dll + engine12.dll, тогда как у Firebird 2.5 и ранее была отдельная fbembed.dll.

+0

Thanks Mark! Хорошо, теперь я установил версию 2.5 вместо 3.0. Теперь я пытаюсь заменить все «flclient_ms.lib» на «lfbembed_ms.lib». Но в папке «lib» есть noch embedded.lib. https://github.com/xdenser/node-firebird-libfbclient/blob/master/binding.gyp Где я могу найти библиотеку? – robert

+1

Вам нужно использовать dll, а не .lib, насколько я знаю. В противном случае проверьте встроенный загружаемый пакет Firebird. –

+0

Я только что нашел этот учебник: https://groups.google.com/forum/#!msg/nodejs/IoRlz2hT24I/K0bjHT-YhKgJ Я нашел встроенный пакет для версии 2.5? – robert

Смежные вопросы