Сбой выполнения пакета служб SSIS при загрузке файла Excel большого размера через каталог служб SSIS (SSISDB) - PullRequest
0 голосов
/ 11 сентября 2018

пакет успешно выполняется из VS, но при развертывании в каталоге служб SSIS выдает следующую ошибку Ошибка: метод Execute в задаче возвратил код ошибки 0x80070008 (не удалось загрузить файл или сборку 'System.Windows.Forms, версия = 4.0.0.0, Culture = нейтральный, PublicKeyToken = b77a5c561934e089' или одну из его зависимостей. Недостаточно памяти доступны для обработки этой команды. (Исключение из HRESULT: 0x80070008). Метод Execute должен завершиться успешно и указать результат с помощью параметра «out»

Размер файла Excel составляет 147 МБ

Ответы [ 2 ]

0 голосов
/ 11 сентября 2018

Microsoft признала этот недостаток и выпустила следующий пакет для его исправления с использованием «новых» диспетчеров Access / Excel Connection. Однако после установки и следования инструкциям возникает та же проблема.

Причина проблемы: Проблема вызвана ограничением, которое существует в офисных версиях 1997-2003. Диспетчер соединений был разработан для Office 1997 и с тех пор не изменялся и не улучшался. Вот почему, когда вы действительно исследуете ограничения для Office 2000 или 2003, вы увидите, что они не допускают более 255 столбцов (ограничение, указанное выше) И длина имени столбца не может превышать 64 символа. Это ограничения программного обеспечения, которые существовали в Office 2000 и 1997, и, поскольку тогда был разработан Connection Manager, они просто остались с ним, поскольку MS не вкладывала средства в улучшение или обновление своего продукта. Надеюсь, это поможет!

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

[https://blogs.msdn.microsoft.com/dataaccesstechnologies/2017/10/18/unexpected-error-from-external-database-driver-1-microsoft-jet-database-engine-after-applying-october-security-updates/][1]

Последнее решение:

Как вы сказали, ваш пакет работает нормально, но не в режиме развертывания, верно? Так почему бы вам не попробовать DTEXEC выполнение командной строки для этого пакета. Запланируйте это, используя Windows Task Scheduler Перейдите по ссылке ниже.

https://www.mssqltips.com/sqlservertutorial/218/command-line-tool-to-execute-ssis-packages/

0 голосов
/ 11 сентября 2018

Да, эта проблема возникает, когда вы пытаетесь загрузить файл Excel через SQL-сервер до 2012 года. Ограничение составляет 120 МБ, разделите ваш файл до размера меньше этого размера и попытайтесь загрузить снова. Второе решение - попробовать SQL Server 2016, и вы не столкнетесь с этой проблемой.

...