Я пытаюсь использовать поставщик OraOLEDB.Oracle для SQL Server Management Studio в Windows Server 2008 R2 Datacenter, 64-битная версия.
Что Я сделал следующее:
. \ Install.bat oledb c: \ oracle \ odac64 odac64 true
для 64 бит. Тогда поставщик не указан в 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 (выпуск 8 или новее)
- Oracle Net Services
- Распространяемые файлы, предоставляемые с компонентами доступа к данным Microsoft (MDAC) 2.1 или выше, требуются поставщиком. Эти файлы доступны на веб-сайте Microsoft: www.microsoft.com/data/oledb/
- Службы Oracle для 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 работать несколько дней ...
Вы также можете использовать Dependency Walker , чтобы проверить себя . См. здесь для получения дополнительной информации.