0

Я делаю пакет SSIS с некоторыми соединениями excel. Это мой enviornment:Excel и 64 бит

  • Microsoft Office 2007 установлен
  • Microsoft Office 2010 установлен
  • SQL Server 2008 R2 установлен
  • Visual Studio 2008 установлен
  • Visual Studio 2010 установлен
  • Database
  • Microsoft Access Двигатель 2010 Распространяемый комплект

это моя строка соединения в файл Excel:

  • Provider = Microsoft.ACE.OLEDB.12.0; источник данных = C: \ XXXXX \ XXXXX \ XXXXX.xls; Extended Properties = EXCEL 14,0; HDR = YES «;

Так что, когда я пытаюсь развернуть мой пакет SSIS, появилось следующее сообщение об ошибке:

OLE DB запись доступна. Источник: «Microsoft Database Database Engine». Hresult: 0x8000040005 Описание: "Не удалось найти устанавливаемую ISAM"

Это странно becouse ранее я установил Microsoft Access Database Engine 2010 Redistributable установлен и у меня есть обе версии Microsoft Office ...

Любая помощь будет оценена !!

ответ

1

Есть несколько результатов в Google по этому вопросу, вы попробовали: http://support.microsoft.com/kb/209805?

также помните, что Dtexec (используется для запуска pacakges) имеет как 64-битное, так и 32-битное приложение. Если вы разрабатываете пакет в 32-разрядной среде и хотите запустить пакет в 64-разрядной среде, диспетчеры соединений должны быть совместимы с 64-разрядными. Некоторые диспетчеры соединений, такие как Excel, работают только в 32-битной среде.

+0

Решение Dtexec недействительно для выполнения пакета dtsx, потому что я выполняю внутри Sharepoint, поэтому мне нужно использовать app.LoadPackage (...) –

+0

да, но я верю, когда вы вызываете package.Execute() он вызывает dtexec для запуска – Diego