Вставьте дату при импорте плоского файла в таблицу SQL Server - PullRequest
0 голосов
/ 10 января 2019

Я пытаюсь импортировать плоский файл в таблицу SQL Server с помощью пакета служб SSIS. Этот пакет планируется запустить каждый день. Я уже создал дополнительный столбец перед импортом файла.

Пример:

Плоский файл на 01/08/2019:

001,Tony Stark,Ironman
014,Steve Rodgers, Captain America

Плоский файл на 01/09/2019:

414,Peter Parker, Spiderman
007,Clark Kent, Superman  

Ожидаемый результат:

После импорта таблица должна выглядеть следующим образом: 01/08/2019

ID      Name              Alias                 Date
````    ``````            ``````                `````
001     Tony Stark        Ironman               2019-01-08  
014     Steve Rodgers     Captain America       2019-01-08  

как это 01/09/2019

ID      Name              Alias                 Date
````    ``````            ``````                `````
001     Tony Stark        Ironman               2019-01-08  
014     Steve Rodgers     Captain America       2019-01-08 
414     Peter Parker      Spiderman             2019-01-09
007     Clark Kent        Superman              2019-01-09 

Ответы [ 2 ]

0 голосов
/ 10 января 2019

Вы можете достичь этого многими способами:

1- Добавить производную колонку в пакет

Вы можете добавить преобразование производного столбца в задачу «Поток данных» и использовать переменную [System::StartTime], которая содержит время запуска пакета. Или вы можете использовать функцию GETDATE(), которая возвращает текущую дату.

2 - добавить значение по умолчанию для добавленного столбца

Вы можете добавить функцию GETDATE() в качестве значения по умолчанию для столбца, поэтому перед каждой новой строкой будет назначено значение текущей даты.

ALTER TABLE DestTable ADD CONSTRAINT DF_SomeName DEFAULT GETDATE() FOR [Date];

Ссылки

0 голосов
/ 10 января 2019

Когда вы загружаете CSV-файл в MySQL, загружает его в новую таблицу MySQL .

Затем используйте таблицу alter , чтобы создать новый столбец даты. Обновите этой новой таблицы, установив в столбце желаемую дату.

Затем вставьте значения из новой таблицы в окончательную таблицу назначения, используя синтаксис mysql insert-select .

Наконец, удалите новую / временную таблицу.

...