Преобразование данных служб SSIS (из Unicode в ANSI) вернуло значение состояния 4 - PullRequest
0 голосов
/ 26 сентября 2018

У меня следующая проблема:

У меня есть пакет служб SSIS, который начинается с запроса, выполняемого в БД Oracle, и я хотел бы экспортировать плоский файл с фиксированной шириной с кодовой страницей ANSI 1253.Я получаю сообщение об ошибке:

Преобразование данных для столбца [имя_ столбца] вернуло значение состояния 4 и текст состояния "Текст был усечен или один или несколько символов не соответствовали целевой кодовой странице"

Проблема связана со второй частью сообщения, так как ширина в порядке.Я пытался использовать Преобразование данных из Панели инструментов, но это не сработало (возможно, я использовал его неправильно).У меня есть только select привилегии для базы данных, поэтому я не могу добавить какие-либо процедуры sql для удаления специальных символов в запросе.Также идея загрузки данных в промежуточную таблицу не будет лучшим выбором в моем случае.У кого-нибудь есть идеи о том, как конвертировать мои данные без получения этой ошибки?

Заранее большое спасибо

1 Ответ

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

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

добавьте производный столбец и приведите ваш столбец.

(DT_STR,[Insert Length],1252) [columnName]

если столбец имеет тип ntextвам нужно сделать 2 шага, чтобы добраться до строки.

(DT_STR...) (DT_WSTR) Ntextcolumn
...