PowerShell 2.0 на Windows Server 2008 R2 не может подключиться с подключением OLEDB - PullRequest
0 голосов
/ 17 ноября 2010

Я разработал приложение powershell на коробке XP, которая установила соединение OLEDB с сервером Sybase для извлечения данных, которые затем вставляются в экземпляр базы данных SQL Server 2008.После отладки этого сценария и обеспечения правильной работы процесса я переместил сценарий в новую версию Windows Server 2008 R2.Чтобы подключиться к экземпляру Sybase, я установил клиент Sybase 12.5.2, как я это делал на компьютере с XP.Однако запуск сценария завершился неудачно с сообщением: Исключение вызывает «open» с аргументом (ами) «0»: «Поставщик« Sybase.ASEOLEDBProvider.2 »не зарегистрирован на локальном компьютере.

БазаСтрока подключения была получена из connectionStrings.com и работала на XP, поэтому я не верю, что существует проблема синтаксиса как таковая. Поэтому я вручную зарегистрировал dll OLEDB с помощью команды: regsvr32 sydaase.dll

, которую он зарегистрировалбез ошибок.

Вырезая соответствующие строки скрипта, логическая последовательность соединения равна $ dbConn = новый-объект System.Data.oldeb.oledbConnection $ dbConn.connectionString = "Provider = Sybase.ASEOLEDBProvider.2;имя сервера = myServer;адрес порта = ххх;начальный каталог = ххх;идентификатор пользователя = ххх;Пароль = xxxx "

В этом примере я заменил свои данные на xxx.

Мне не ясно, почему это без проблем запускалось на компьютере с XP, но не удается сделать это в WindowsСерверная коробка, хотя я следовал тому же процессу конфигурации.

1 Ответ

2 голосов
/ 17 ноября 2010

Держу пари, что вы пробуете это на 64-битной машине R2 и используете 64-битную консоль PowerShell.Нет собственных 64-битных драйверов OLEDB, только 32-битных - используйте 32-битную консоль, и все должно быть в порядке.

...