Назад | Перейти на главную страницу

OraOLEDB.Oracle не отображается в списке поставщиков для SSMS

Я пытаюсь использовать поставщика OraOLEDB.Oracle для SQL Server Management Studio в Windows Server 2008 R2 Datacenter, 64-разрядная версия.

Я сделал следующее:

  1. Установил 32- и 64-битную версию для провайдера (версия ODAC со страницы Oracles), используя командную строку от имени администратора: .\install.bat oledb c:\oracle\odac64 odac64 true для 64 бит.
  2. Добавлены пути оракула 32 и 64 в переменные среды.
  3. Начать сначала.

Тогда поставщик не указан в Management Studio.

Я также создал файл UDL, но он там появился.

Я пытался зарегистрировать их с regsvr32 orasql12.dll для 64 бит и c:\windows\syswow64\regsvr32.exe orasql12.dll для 32 бит, но я получил следующую ошибку:

Не удалось загрузить модуль orasql12.dll. Убедитесь, что двоичный файл хранится по указанному пути, или выполните отладку, чтобы проверить наличие проблем с двоичным или зависимыми файлами .DLL.

Однако установщик должен был зарегистрировать обоих провайдеров, поэтому я не думаю, что это проблема.

Есть идеи по этому поводу?

Я снова начал исследовать и нашел решение Вот

Я думаю, что это происходит только с Windows Server.

Нам необходимо зарегистрировать OraOLEdb12.dll вместо этого, который находится в каталоге bin следующим образом:

regsvr32 c:\oracle\odac64\bin\OraOLEDB12.dll

PD: Отличный инструмент - Dependency Walker, я попробовал его и дал мне очень полезную информацию!

Ошибка исходит из regsvr32 и означает orasql12.dll имеет неудовлетворенную зависимость. Перепроверьте с документация. Вот что я нашел:

Системные Требования

Для использования Oracle Provider для OLE DB в системе требуются следующие элементы:

  • Windows 98, Windows NT 4.0, Windows 2000 или Windows XP
  • Доступ к Oracle Server (выпуск 8 или новее)
  • Oracle Net Services
  • Распространяемые файлы, поставляемые с Microsoft Data Access Component (MDAC) 2.1 или более поздней версии, требуются поставщиком. Эти файлы доступны на веб-сайте Microsoft: www.microsoft.com/data/oledb/
  • Oracle Services для Microsoft Transaction Server (выпуск 9.0). Этот элемент необходим для потребителей, использующих Microsoft Transaction Server (MTS) или COM +.

Я также нашел нить на форумах Oracle:

После еще нескольких исследований я нашел проблему. В файле readme.htm, который включен в распакованную папку 64-разрядных поставщиков, объясняется, что после установки файлов через install.bat вам необходимо указать место, где вы установили файлы, в переменную PATH для Windows. Например, если вы используете файл install.bat для установки файлов в C: \ Oracle, вам нужно поместить пути "C: Oracle" и C: \ Oracle \ bin "в переменную PATH. Вы можете найти эту переменную щелкнув правой кнопкой мыши «Мой компьютер» и выбрав «Свойства» (для пользователей Windows Vista / 7 щелкните правой кнопкой мыши «Компьютер», затем «Свойства», затем «Расширенные системные настройки»). Щелкните вкладку «Дополнительно» и нажмите кнопку «Переменные среды». В списке «Системные переменные» вы я найду переменную PATH. Надеюсь, это поможет кому-то другому .... Я работал над тем, чтобы заставить работать провайдер oledb несколько дней ...

Вы также можете использовать Зависимость Уокер проверить самостоятельно. Видеть Вот Чтобы получить больше информации.