БД Firebird. Подключение, чтение, просмотр - сделать по-быстрому
Комментарии
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
Делал такое через самописную ВК (Native API, на Delphi, использует gdi32.dll), не требует дополнительных настроек на клиенте и установки. Если 1С и FB на разных серверах - не требует никаких танцев с бубном. Единственный минус - работает медленно.
Сутки уже долблю, со всех сторон попробывал, в т.ч. и Ваш вариант - не работает. Пишет:
1.
Ошибка при установке соединения: {ВнешняяОбработка.ВнешняяОбработка3.Форма.Форма.Форма(39)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [ODBC Firebird Driver]Unable to connect to data source: library 'C:\Program Files (x86)\Firebird\Firebird_2_5\bin\fbclient.dll' failed to load
2.
Ошибка при установке соединения: {ВнешняяОбработка.ВнешняяОбработка3.Форма.Форма.Форма(39)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [ODBC Firebird Driver]Unable to connect to data source: library 'gds32.dll' failed to load
3.
Ошибка при установке соединения: {ВнешняяОбработка.ВнешняяОбработка3.Форма.Форма.Форма(39)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [ODBC Firebird Driver]Unable to connect to data source: library 'C:\Users\rich\Desktop\Обучение\IBExpert\IBEUDB\fbembed.dll' failed to load
4.
Ошибка при установке соединения: {ВнешняяОбработка.ВнешняяОбработка3.Форма.Форма.Форма(39)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Devart][ODBC][Firebird]Cannot load client library: C:\Program Files (x86)\Firebird\Firebird_2_5\bin\fbclient.dll
Ещё долго могу перечислять...
Платформа 8.3.16.1224
1.
Ошибка при установке соединения: {ВнешняяОбработка.ВнешняяОбработка3.Форма.Форма.Форма(39)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [ODBC Firebird Driver]Unable to connect to data source: library 'C:\Program Files (x86)\Firebird\Firebird_2_5\bin\fbclient.dll' failed to load
2.
Ошибка при установке соединения: {ВнешняяОбработка.ВнешняяОбработка3.Форма.Форма.Форма(39)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [ODBC Firebird Driver]Unable to connect to data source: library 'gds32.dll' failed to load
3.
Ошибка при установке соединения: {ВнешняяОбработка.ВнешняяОбработка3.Форма.Форма.Форма(39)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [ODBC Firebird Driver]Unable to connect to data source: library 'C:\Users\rich\Desktop\Обучение\IBExpert\IBEUDB\fbembed.dll' failed to load
4.
Ошибка при установке соединения: {ВнешняяОбработка.ВнешняяОбработка3.Форма.Форма.Форма(39)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Devart][ODBC][Firebird]Cannot load client library: C:\Program Files (x86)\Firebird\Firebird_2_5\bin\fbclient.dll
Ещё долго могу перечислять...
Платформа 8.3.16.1224
(7) Большое спасибо за ответ...И, да, Вы правы. Я нашел это решение ещё через 3 часа после того, как написал этот комментарий, но сначала потрахался с *.udl, понял, что подключение происходит только в 32-х разрядном режиме, запуская принудительно через oledb32 с помощью rundll32 из папки syswow64. Потом ломал голову как всё это прописать в свойствах подключения, а потом просто установил 32-х разрядную версию 1С и заработало.
Очень интересная ситуация:
32 и 32 работает, но 1с считает себя ломаной и вылетает.
Поставил Огнептицу 64 и 1с 64 и выдает ошибку
Ошибка при установке соединения: {ВнешняяОбработка.ПросмотрДанныхFireBird.Форма.Форма.Форма(332)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [ODBC Firebird Driver]Your user name and password are not defined. Ask your database administrator to set up a Firebird login.
Строка соединения: driver=Firebird/InterBase® driver;
Dialect=3;
CHARSET=NONE;
Uid=SYSDBA;
Pwd=1;
Dbname=C:\1C\2012.GDB
32 и 32 работает, но 1с считает себя ломаной и вылетает.
Поставил Огнептицу 64 и 1с 64 и выдает ошибку
Ошибка при установке соединения: {ВнешняяОбработка.ПросмотрДанныхFireBird.Форма.Форма.Форма(332)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [ODBC Firebird Driver]Your user name and password are not defined. Ask your database administrator to set up a Firebird login.
Строка соединения: driver=Firebird/InterBase® driver;
Dialect=3;
CHARSET=NONE;
Uid=SYSDBA;
Pwd=1;
Dbname=C:\1C\2012.GDB
(12)
Новые данные:
Если пароль поменять на masterkey или masterke, то выходит другая ошибка
Ошибка при установке соединения: {ВнешняяОбработка.ПросмотрДанныхFireBird.Форма.Форма.Форма(334)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [ODBC Firebird Driver]file C:\1C\ISC4.GDB is not a valid database
Новые данные:
Если пароль поменять на masterkey или masterke, то выходит другая ошибка
Ошибка при установке соединения: {ВнешняяОбработка.ПросмотрДанныхFireBird.Форма.Форма.Форма(334)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [ODBC Firebird Driver]file C:\1C\ISC4.GDB is not a valid database
Походу бубны не прокатят
Внутренний формат хранения данных в firebird специфичен для платформы. Файл базы, созданный на x86, не будет валидным на x64, и наоборот.
Для корректной конвертации вам придётся сделать backup на x86, и restore на x64. Просто скопированы файл базы заставить работать не получится.
Вот аналогичный вопрос на enSO: Statement failed, SQLSTATE = -922 my_database.gdb is not a valid database
Для корректной конвертации вам придётся сделать backup на x86, и restore на x64. Просто скопированы файл базы заставить работать не получится.
Вот аналогичный вопрос на enSO: Statement failed, SQLSTATE = -922 my_database.gdb is not a valid database
Вопросы с вознаграждением
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|