SSIS сохраняет конечные пробелы в месте назначения csv

У меня проблема в SSIS с простой задачей потока данных между SQL SELECT и пунктом назначения CSV. Я не извлекаю конечные пробелы в строковых столбцах адресата. Кажется, SSIS удаляет их.

Есть ли способ сохранить конечные пробелы в столбцах назначения плоского файла? Пример :
задача потока данных :
ввод : выбор sql, данные - char(8), поэтому с пробелами справа, например, "9L300"
вывод : плоский файл, формат csv, пробелы справа автоматически обрезаются , например "9L300"

Мне нужно сохранить конечные пробелы, чтобы не было регрессии с текущим экспортом в MS DTS.

Я пробовал это в своем выборе SQL, но не влиял на файл назначения csv.

rtrim(MYDATA) + space(8-len(rtrim(MYDATA))) as MYDATA

person Jean    schedule 23.06.2014    source источник


Ответы (1)


Просто проверьте, не манипулируются ли значениями источник OLE DB или на пути к месту назначения плоского файла или в диспетчере назначения плоского файла. Поэтому наблюдайте (включите средство просмотра данных) значения, используя производный столбец/преобразование данных/компонент скрипта между источником и местом назначения.

Попробуйте, установив значение ANSI_PADDING для базы данных, которую вы используете в качестве источника OLE DB.

УСТАНОВИТЬ ANSI_PADDING

person Vikramsinh Shinde    schedule 23.06.2014
comment
Спасибо за ответ. Я думаю, что нашел решение, добавив конечные пробелы с помощью этой инструкции в скрипт компонента: Row.MYDATA_WITHSPACES = Row.MYDATA.trim & Space(8 - Row.MYDATA .Length) - person Jean; 24.06.2014