Сообщение об ошибке «Преобразование значения varchar ‘6160382514d97’ переполнило столбец int» в пакете служб SSIS

#sql #ssis #visual-studio-2019

Вопрос:

Я искал решение этой проблемы, но мне не повезло.

У меня есть пакет служб SSIS, который загружает данные из одной таблицы и после некоторых поисков и т. Д. Записывает их в другую таблицу. Вышеуказанная ошибка возникает на первом этапе потока данных, который является источником OLEDB (база данных SQL 2016). Рассматриваемый столбец является nvarchar(250), и в любой момент ничто не меняет его на int.

Я думаю, что это должно быть какое-то неявное преобразование, но почему, если это nvarchar на всем протяжении?

Я выдергиваю волосы с помощью этого, у кого-нибудь есть какие-нибудь идеи, пожалуйста?

Поток данных

сообщение об ошибке

Исходные и целевые метаданные

Комментарии:

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

2. Спасибо, что вернулся ко мне @billingc. У меня возникли некоторые проблемы с добавлением изображений. Я придумаю, как это сделать, и загружу их.

3. @billinkc Я добавил скриншоты в свой оригинальный пост.

4. Это, по-видимому, временная проблема, которая допускает такие типы значений большую часть времени, но возникает по какой-то, пока неизвестной причине.

5. Есть ли у вас более одного потока данных в пакете?

Ответ №1:

Спасибо за ответы. Похоже, проблема заключалась в размере буфера с задачей поиска. Когда я проверил таблицу поиска, в ней не было соответствующего индекса. Я добавил один, и, похоже, он решил проблему.

Ответ №2:

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

Я предлагаю вам удалить исходный компонент ole Db и создать новый с помощью вашего выбора. Кроме того, вы можете перейти к дополнительной опции (щелкните правой кнопкой мыши на исходном компоненте, и на последней вкладке вы сможете проверить тип данных вашего столбца и адаптировать его к varchar, если он целочисленный.