2010-11-03 2 views
1

Когда я выполняю простой запрос SELECT * FROM ... (семь столбцов) в Management Studio, а затем сохраняю результаты в виде текстового файла с разделителями с табуляцией, результирующий файл генерируется и правильно, но когда я запускаю тот же запрос в SSIS для создания того же текстового файла, он настаивает на правильном заполнении всех столбцов varchar пробелами. Он правильно делится, но значения столбцов занимают полную ширину столбца пробела, аналогичную формату фиксированной ширины.SQL Server 2005 SSIS padding Результаты, связанные с табуляцией

Я попытался установить соединение данных текстового файла с оборванным правом вместо разделителя, но в этом случае он не позволяет мне указывать TAB в качестве разделителя.

Я пытаюсь выяснить, что отличается в том, как SSIS форматирует вывод из вывода Management Studio.

+0

Можете ли вы вставить схему таблиц? – dotariel

+0

Это на самом деле представление, основанное на нескольких разных таблицах. Все, кроме одного из столбцов из этих таблиц, являются varchar, причем один из них является char. –

ответ

0

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

Можете ли вы проверить исходные данные, чтобы увидеть, есть ли пробелы в значениях? Промежуточные пробелы могут существовать даже в типе данных varchar. Если у вас есть пробелы в данных, вы можете использовать функцию RTRIM() в исходном запросе, чтобы избавиться от них.

+0

В данных нет пробелов. Я очень озадачен различием в продукте с разделителями TAB для Management Studio по сравнению с подключением текстового файла с разделителями SSIS TAB. Я не могу понять, почему они должны давать разные результаты. Разве они не используют одни и те же библиотеки? –

Смежные вопросы