Колонка заголовка плоского файла для чтения служб SSIS - PullRequest
2 голосов
/ 06 марта 2019

Можете ли вы, ребята, помочь мне (указать мне правильное направление), как я могу добиться следующих результатов в SSIS.

Итак, у меня есть плоский файл, который выглядит следующим образом

    ColumnA  ColumnB  ColumnC  ColumnD  ColumnN
    1        x        APPLE    Random1  MoreRandomData1
    2        y        ORANGE   Random2  MoreRandomData2
    3        z        OTHER    Random3  MoreRandomData3

... и мне нужно сохранить эти данные в таблице в следующем формате

ColumnA, ColumnB, BigBlurColumn
1        x        ColumnC:APPLE, ColumnD:Random1, ColumnN:MoreRandomData1
2        y        ColumnC:ORANGE, ColumnD:Random2, ColumnN:MoreRandomData2
3        z        ColumnC:OTHER, ColumnD:Random3, ColumnN:MoreRandomData3

Вот мой вопрос:
1. Как я могу прочитать заголовок / столбец плоского файла?2. Можно ли повернуть результат # 1

Если мне удастся манипулировать как № 1, так и № 2, сброс будет довольно легким для меня в SSIS, очевидно, я могу написать эти сценарии, однако мойклиент настаивает на использовании SSIS, так как это стандартный ETL-инструмент.

Есть идеи, как мне достичь вышеуказанного сценария?

Спасибо

Ответы [ 2 ]

1 голос
/ 06 марта 2019

В диспетчере соединений с плоскими файлами снимите флажок First row contains header.Затем перейдите на вкладку «Дополнительно», удалите все столбцы и оставьте один и измените его длину на 4000.

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

  1. Прочитать заголовки столбцов из первой строки
  2. Создать нужные выходные столбцы во всех оставшихся строках

Следующие ответы (разные ситуации, но они полезны) будетдать вам несколько советов:

0 голосов
/ 06 марта 2019

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

...