2015-04-22 3 views
2

Я пишу код VBA в своей таблице в Excel 2013, код будет подключать Oracle 11g для записи некоторых данных в него. Я использую следующий код для подключения удаленного сервера Oracle:[Microsoft] [Диспетчер драйверов ODBC] Имя источника данных не найдено, и указанный драйвер по умолчанию не указан

Private Function open_DB(tnsInfo As String, userName As String, pwd As String) As ADODB.Connection 
    Dim conn As ADODB.Connection 
    Dim connStr As String 
    Dim tnsInfoArr As Variant 

    tnsInfoArr = getTnsProperty(tnsInfo, ";") 

    On Error GoTo Error_Handling 
    Set conn = New ADODB.Connection 
    'connStr = 
    connStr = "Driver={Microsoft ODBC for Oracle}; " & _ 
       "CONNECTSTRING=(DESCRIPTION=" & _ 
       "(ADDRESS=(PROTOCOL=TCP)" & _ 
       "(HOST=" & tnsInfoArr(1) & ")(PORT=" & tnsInfoArr(2) & "))" & _ 
       "(CONNECT_DATA=(SERVICE_NAME=" & tnsInfoArr(0) & "))); uid=" & userName & " ;pwd=" & pwd & ";" 
    conn.ConnectionString = connStr 
    conn.CursorLocation = adUseClient 
    conn.Open 
    conn.CommandTimeout = 120 
    If conn.State = adStateOpen Then 
     'MsgBox "connect to Oracle successfully" 
     'conn.Close 
    End If 
    Set open_DB = conn 
End Function 

этот код прекрасно работает на моем компьютере, но он не работает в компьютере моего коллеги, после сообщения об ошибках, отображаемые в машине моего коллеги:
[Microsoft] [ ODBC Driver Manager] Имя источника данных не найдено, и указанный драйвер по умолчанию не указан
Ошибка ADO: - 2147467259
...
Неужели моей коллеге нужна какая-то конфигурация на его ПК? но я помню, что я не настраивал что-то на своем компьютере.
может кто-нибудь сказать мне, как решить эту проблему?
Моя версия ОС - это 64-разрядные окна 7 Enterprise Edition SP1 , и я использую 64-разрядную версию MS Office 2013.

ответ

0

Я думаю, вам нужно настроить пользователяDSN через ODBC источника данных администратора (32 бит/64 бит). Также убедитесь, что на компьютере вашего коллеги есть все драйверы, необходимые для запуска кода.

Cheers.

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

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