2015-05-06 1 views
2

Я хочу построить соединение между ODBC и Firebird. Он показал такие сообщения об ошибках:Драйвер Firebird ODBC Не удалось подключиться к источнику данных, библиотека «gds32.dll» не смогла загрузить

[Драйвер Firebird ODBC] Невозможно подключиться к источнику данных; library'gds32.dll»не удалось загрузить

[ODBC Firebird Driver] Invalid атрибут строки соединения.

Вот мой код:

Dim conn As ADODB.connection    
Dim vError As Variant     
Dim sErrors As String     
Dim stringsql As Long    
Dim dbs As DAO.Database     
Dim recordset_case As ADODB.Recordset 

'************************************************************* 
'Setting up connection between IRIS data and central database 
'*********************************************************** 
'1.set up connection 
Set conn = New ADODB.connection 
On Error Resume Next 
conn.Open "DRIVER=Firebird/InterBase(r) driver; 
DBNAME=C:\IRIS\Data\IRIS_TEST.IB; UID=SYSDBA; PWD=masterkey;READONLY = YES" 
On Error GoTo 0 

'to test whether the connection has been built over the IRIS and central database 
If conn.State = adStateOpen Then 
    'adstateopen=the object is open 
    MsgBox "Connection Succeeded", vbInformation 
Else 
    For Each vError In conn.Errors 
     sErrors = sErrors & vError.Description & vbNewLine 
    Next vError 
    If sErrors > "" Then 
     MsgBox sErrors, vbExclamation 
    Else 
     MsgBox "Connection Failed", vbExclamation 
    End If 
End If 

На данном этапе, я попробовал эти следующие шаги:

  1. на основе this article, я переименовал fdclient.dll к gds32. dll и скопирован в файл system32. Затем я выбрал клиентскую библиотеку Firebird в настройке драйвера Firebird ODBC.
    Это не работает.

  2. Uninstall and reinstall Firebird. Из-за того, что Firebird является частью нашего программного пакета, мы выполнили этот шаг. Кроме того, мы проверили, что Firebird - последняя версия для 2.5.4. Таким образом, у нас есть последняя версия для сервера Firebird.
    Это тоже не работает.

+0

Вы пытались поместить gds32.dll в ту же папку, в которой у вас есть свой двоичный файл? Также я помню, вы должны добавить другие файлы, кроме gds32.dll. – CrApHeR

+0

Что такое бит (32 бит или 64): Windows, ваша установка Firebird и установленный драйвер ODBC? –

+0

@CrApHeR Да, я сделал. Но какой файл вы имеете в виду? –

ответ

5

На окнах 64 бит 32 бит dll файлы находятся в SysWoW64, не system32 (что, по логике вещей ..., содержит 64-битные DLL).

Если вы хотите установить 32-разрядный gds32.dll, я настоятельно рекомендую использовать instclient.exe, входящий в состав Firebird, вместо переименования fbclient.dll. Для 64-битной Firebird одна из bin\ предназначена для 64 бит, 32-разрядная - в wow64 или wow (я считаю, у меня нет установленной Windows).

Чтобы запустить instclient.exe, запустите командную строку как администратор.

Для установки fbclient.dll использования:

instclient i f 

Для установки GDS32.DLL использования:

instclient i g 

Убедитесь, что вы выбрали правильный instclient (от bin 64 бит или из wow или wow64 для 32 бит); или просто установите оба. Также убедитесь, что вы установили 32-битный драйвер ODBC для Firebird.

Относительно вашего последнего комментария: Я нахожусь в убытке, чтобы объяснить это; возможно, он использует другую конфигурацию или драйвер?

+0

Привет, Марк, большое вам спасибо за этот полезный совет. Проблема решена сейчас! Внимательно оцените свой вклад и усилия. –

+0

Почему вы не отметили это как ответ @hanhanStacey? –

+0

Спасибо, что поделились этим, это сработало для меня. – Buminda

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