2009-02-15 3 views
-2

У меня есть пакет SSIS, который делает простой просмотр из плоского файла и вставляет его в SQL Server 2005. Он работал нормально на одном компьютере (компьютер 1), причем локальный источник и конечный пункт указывали локально ,Сбой SSIS после изменений порядка колонок

Пакет затем переместился на другой компьютер (компьютер 2), снова со всем, указывающим локально, и начал сбой. Посмотрев на это некоторое время, оказалось, что столбцы таблицы назначения были в другом порядке на двух машинах. Пакет был неудачным, поскольку он пытался записать данные в неправильные столбцы таблицы. То есть на компьютере 1 столбцы были A, B, C, а на компьютере 2 они были C, A, B - пакет пытался записать данные A в C на компьютере 2 и т. Д.

Я пропустил что-то Вот? Действительно ли SSIS зависит от порядка столбцов при написании адресатов OLE DB вместо имен столбцов? Или у меня плохая настройка?

ответ

-1

Вы проверили сопоставление столбцов в задаче потока данных? Иногда отображение исчезает или указывает на неправильный столбец. В вашем случае пакет SSIS перемещается, тогда есть хорошая вероятность, что отображение повреждено. Я думаю, вам просто нужно исправить отображение, и это должно быть исправление.

2

SSIS считывает метаданные из соединения и сохраняет их с помощью сопоставления. Иногда он может обнаружить изменение и даст ошибку проверки (в этом случае пакет не будет проверен, и вам придется изменить пакет, чтобы исправить проблему). Иногда вы можете увидеть это в дизайнере, если вы откроете пакет, и он предложит исправить столбцы.

В некоторых случаях он не будет обнаруживать изменения во время фазы проверки, и во время вставки он не будет работать.

Итак, мой вопрос: не удалось ли он выполнить проверку или более позднюю стадию выполнения?

0

Это то же самое, когда вы используете Oracle как источник или пункт назначения. Он не обнаруживает изменения столбцов и фальсификации во время выполнения. Я обновляю задачу потока данных каждый раз, когда изменился порядок столбцов или добавлен новый столбец.