Соединение с Oracle через VBA больше не работает

Я использовал эту строку подключения:

 fn_Connection_String = "Provider=MSDAORA;Data Source=[address]:1521/orcl;User ID=xxx;Password=xxx"

... и все работало нормально. ИТ-компания, работающая на моего клиента, сообщила, что клиент больше не может использовать мое программное обеспечение, оно не подключается к базе данных. Я тестирую с инструментами Oracle, и все, кажется, хорошо, поэтому я предполагаю, что проблема с поставщиком.

Я попробовал это также, и был встречен с той же ошибкой, но из другого программного обеспечения:

fn_Connection_String = "Driver={Microsoft ODBC for Oracle}; " & _
    "CONNECTSTRING=(DESCRIPTION=" & _
    "(ADDRESS=(PROTOCOL=TCP)" & _
    "(HOST=[address])(PORT=1521))" & _
    "(CONNECT_DATA=(SERVICE_NAME=orcl))); uid=xxx;pwd=xxx;"

Кто-нибудь знает, что происходит? Может быть, какие-то обновления что-то сломали, или люди копались в окружающей среде?

Похоже, что старое соединение ODBC больше не работает, и есть разъем "оракул в InstantClient", который работает, но не работает в VBA.

Я получаю сообщение Oracle client and networking components were not found. These components are supplied by Oracle Corporation and are part of the Oracle Version 7.3.3 or later client software installation. Provider is unable to function until these component are installed

РЕДАКТИРОВАТЬ После публикации я обнаружил, что ИТ-компания установила 2 драйвера, что-то 11 версия, а также InstantClient, который является что-то версия 12. Я пытался с помощью "Driver={Oracle in instantclient_12_1}; " (Так как это имя драйвера в 32-разрядном диспетчере соединений ODBC), но это не работает.

1 ответ

Решение

9 февраля Microsoft выпустила патч, который стал причиной этой проблемы.

В настоящее время он указан как известная проблема.

https://support.microsoft.com/en-us/kb/3126587

Другие вопросы по тегам