Предполагается, что у вас есть CSV-файл в следующем формате
order_id,Total_sales,Date_Ordered
1,123.23,01/01/2010
2,242.20,02/01/2010
3,34.23,3/01/2010
4,9032.23,19/01/2010
Я бы начал с создания источника плоских файлов (внутри задачи потока данных), но вместо фиксированной ширины установите формат с разделителями. Отметьте имена столбцов в первой строке данных. На вкладке столбца убедитесь, что разделитель строк установлен на "{CR} {LF}", а разделитель столбцов установлен на "Запятая (,)". Наконец, на вкладке «Дополнительно» задайте типы данных каждого столбца: целое, десятичное и дату.
Вы упоминаете, что хотите заполнить числовые типы данных начальными нулями при их сохранении в базе данных. Числовые типы данных в базах данных обычно не содержат начальных нулей. Итак, у вас есть два варианта; либо сохраняйте данные в виде типа в целевой системе (int, decimal и dateTime), либо используйте элемент управления Derived Column для преобразования их в строки. Если вы решили сохранить их как строки, добавьте выражение типа
"00000" + (DT_WSTR, 5) [order_id]
к элементу управления Derived Column добавит до 5 ведущих нулей к идентификатору заказа (не забудьте установить длину типа данных равным 5), что приведет к идентификатору заказа "00001"
Создайте свою цель в пункте назначения потока данных и сделайте сопоставления таблицы / поля соответственно (или позвольте службам SSIS создать новую таблицу / сопоставления для вас).