Существует ли простой способ импортировать данные из нескольких файлов Excel в SQL, включая имена файлов с помощью служб SSIS? - PullRequest
1 голос
/ 03 апреля 2019

Мне нужно импортировать данные о зарплате из нескольких файлов Excel, где имя файла каждого файла является датой.

Я использовал SSIS и с успехом следовал типичным учебникам по импорту нескольких файлов Excel. Дело в том, что ни один из них не показывает простой способ, как добавить один дополнительный столбец (с именем файла) к результату. Есть несколько обучающих программ с огромными кодами, которые слишком сложны для меня.

Что я сделал, так это добавил модуль «Производный столбец» между типичным «источником Excel» и «Назначением OLE BD», где я добавил новый столбец «дата» с выражением @ [User :: FileName] - переменная, которая используется для 'контейнера цикла foreach', но в результате я получил комбинированные данные из всех файлов, но дополнительный столбец содержит те же данные - имя файла первого импортированного файла.

Интересно, есть ли какой-нибудь простой способ создать переменную, которую я использовал для изменения каждого цикла? Таким образом, в результате я получаю объединенные данные плюс один дополнительный столбец, содержащий соответствующую дату, которая является именем каждого файла. Большое спасибо

1 Ответ

4 голосов
/ 03 апреля 2019

Если вы используете Foreach File Enumerator, выберите «Только имя» на панели Collection, как показано на рисунке ниже (я предполагаю, что «Только имя» даст вам дату, которую вы ищете).

Collection Pane

Это позволяет отображать это в переменную на каждой итерации. Для этого перейдите на панель Variable Mappings и выберите переменную, которую вы хотите использовать в Data Flow Task, с индексом 0 в качестве.

Variable Mappings Pane

Затем вы можете добавить эту переменную как Derived Column, и она даст вам имя импортируемого файла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...