Преобразование данных служб SSIS (из юникода в ANSI) вернуло значение состояния 4

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

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

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

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

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

1 ответ

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

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

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

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

(DT_STR...) (DT_WSTR) Ntextcolumn
Другие вопросы по тегам