2013-03-27 4 views
0

У меня есть пакет, который будет экспортировать данные из таблицы в место для плоского файла. На другом сервере экспортируемый текстовый файл будет импортироваться в таблицу. На самом деле, моя проблема заключается в том, что пакет должен экспортировать и импортировать NULL как NULL, а пустую строку - как пустую строку.Экспортировать нулевые значения в Flat file Source

Я знаю, что у нас есть опция в файле с плоским файлом «Сохранять нулевые значения из источника в виде нулевых значений в потоке данных». Но он изменит все пустые строки на нулевые значения.

Может кто-нибудь предложить мне, чтобы достичь этого лучше.

+0

Проверьте длину столбца как «Len (LTRIM (Column))'. Если это '0', тогда присвойте« null ». Используйте его в производном столбце после« Flat File Source » – praveen

+0

@praveen: я не хочу заменять пустую строку нулевым. Я должен содержать null как пустой и пустой как пустой. – Maximus

+0

Если это так, тогда не выбирайте свойство 'Сохранить значения в источнике 'в' Flat file connection'. Таким образом, если у вас есть «NULL» или «плоский файл», будут отображаться те же значения ниже по течению – praveen

ответ

1

Я бы экспортировал «истинные» нули в виде отдельного текста, например <null>, а затем заменил их как нули при импорте.

+0

Можете ли вы также рассказать мне, какую задачу вы будете использовать, чтобы заменить нуль различными значениями в каждом столбце. В моем столе более ста столбцов. – Maximus

2

BCP может быть решением здесь. Запустите BCP для экспорта исходной таблицы в файл, а затем запустите BCP, чтобы импортировать файл в целевую таблицу. Вызов BCP может быть через xp_cmdshell, поэтому его можно запустить как выполнение задачи SQL. Интересно отметить, что BCP выводит пустую строку как null и null как пустую строку. Но если мы используем BCP для экспорта и импорта, значения будут правильно отображаться.

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