Пакет, выполненный в Visual Studio, отменяется без полезной ошибки. - PullRequest
0 голосов
/ 02 февраля 2019

Я учусь на курсе Удеми Изучаю ETL с помощью SSIS .Первая простая задача - перенести данные из файла excel в базу данных.

Единственное изменение, которое я сделал, я пытаюсь перенести на сервер PostgreSQL вместо Microsoft SQL Server.Поэтому мне сначала пришлось установить SSDT для Visual Studio и получить драйвер ODBC, необходимый для создания пункта назначения ODBC для пакета.

Пока все хорошо, но потом, когда я пытаюсь запустить пакет, я просто получаю:

Запуск пакета служб SSIS «Visual Studio 2017 \ Projects \ Excel_SQL \ Excel_SQL \ Package.dtsx».Информация: 0x4004300A в Excel для SQL, SSIS. Трубопровод: фаза проверки начинается.Информация: 0x4004300A в Excel для SQL, SSIS. Трубопровод: фаза проверки начинается.Информация: 0x40043006 в Excel для SQL, SSIS. Трубопровод: начинается подготовка к выполнению.Информация: 0x40043007 в Excel для SQL, SSIS. Конвейер: начинается этап перед выполнением.Информация: 0x4004300C в Excel для SQL, SSIS. Трубопровод: начинается фаза выполнения.Пакет служб SSIS «Visual Studio 2017 \ Projects \ Excel_SQL \ Excel_SQL \ Package.dtsx» завершен: отменено.Программа «[14368] DtsDebugHost.exe: DTS» завершила работу с кодом 0 (0x0).

Передача данных не выполняется.Файл Excel очень прост, Excel 97-2003, как и ожидалось в соединении, содержит только 2 столбца, rollnumber и marks, rollnumber имеет 11 строк данных, идущих от 1 до 11, а затем несколько случайныхотметки в столбце отметок.

Моя база данных на Postgres настроена с этими двумя столбцами как числовые типы.

Я действительно не могу понять, что происходит неправильно.

Я видел несколько похожих вопросов о переполнении стека, но это было связано с неправильным типом файла:

Не думаю, что это моя проблема.

Кто-нибудь может посоветовать, пожалуйста?

Спасибо.

Ответы [ 2 ]

0 голосов
/ 04 февраля 2019

Итак, в данном случае мне просто нужно было переместить файл Excel (Source) на мой диск E: \.Возможно, путь был слишком длинным?Только 3 папки из E: \, но ... это сработало.

Кто-нибудь может объяснить, почему это было проблемой?Ничто не указывало на это из сообщений об ошибках.

0 голосов
/ 02 февраля 2019

Я думаю, что ситуация не ясна, но есть много советов, которым вы можете следовать:

(1) Попробуйте запустить пакет в 32-битном

Возможно, проблема вызванаесли пакет пытается работать в 64-битном режиме и вы не установили соответствующие ссылки, попробуйте выполнить пакет в 32-битном режиме:

Package Properties >> Debugging >> Run64BitRuntime = false

(2) AccessDatabaseEngine не установлен

Эта проблема может быть вызвана компонентами подключения Office для Microsoft Excelотсутствуют, убедитесь, что вы их установили:

(3) Убедитесь, что вы выполнили соответствующие шаги для создания ODBC-адресата

Вы можете следовать этой статье, чтобы создать пакет, который импортирует данные в postgres, проверьте, что всеподсказки выполнены правильно:

(4) Временные решения

Чтобы указать источник ошибки, попробуйте заменить назначение Postgres на назначение плоского файла, если пакет выполнен успешно, то проблема связана с назначением ODBC, также попробуйте заменить источник Excel на источник файла FLat, еслипакет выполнен успешно, проблема в источнике Excel.

Если вы новичок в службах SSIS, вам могут помочь следующие статьи:

(5) Попробуйте использовать мастер импорта импорта SQL

Если у вас установлен SQL Server, попробуйте использовать мастер экспорта импорта Excel для создания и выполнения пакета:

...