Как сохранить нулевые значения в месте назначения плоского файла в пакете ssis

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

3 ответа

Решение

@H.Fadlallah предоставил пример того, как обрабатывать NULLS при чтении из плоского файла. Я понимаю, что вы хотите записать NULL в плоский файл. Как было объяснено, у плоских файлов нет понятия NULL. В отличие от SQL они не имеют тип данных. Все это строка. NULL в плоском файле равен пустой строке.

Из вашего заявления

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

Я могу только предположить, что вы хотите напечатать текст "NULL" в плоский файл. Для этого вы можете использовать компонент Производный столбец. Поместите его между источником OLE DB и местом назначения плоского файла. Внутри компонента "Производный столбец" определите нулевые значения и приведите их из истинного значения NULL в строковое значение "NULL", используя следующее троичное выражение.

ISNULL([MyColumn]) ? "NULL" : [MyColumn]

Надеюсь это поможет. Если вам нужно что-то еще, пожалуйста, уточните свой вопрос.

Используйте преобразование производного столбца в службах SSIS, попробуйте следующий код. замещать [ColumnName] с вашей колонкой.

ISNULL([ColumnName]) ? "NULL" : [ColumnName]

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

IE:

В компоненте скрипта вы можете проверить значение столбца следующим образом:

If Not Row.inCol_IsNull AndAlso _
   Not String.IsNullOrEmpty(Row.InCol) Then

  'Do SomeThing
  Row.OutCol = Row.inCol

  Else

  Row.OutCol_IsNull = True

  En If

ИЛИ ЖЕ

при использовании приложения

 If not strValue is nothing andAlso _
    not string.IsNullOrEmpty(strvalue) then

 ' do something
 end If
Другие вопросы по тегам