Excel в SQL (SSIS) - импорт более 1 файла, в каждом файле более 1 листа, а данные из Excel начинаются с 3-й строки - PullRequest
0 голосов
/ 13 марта 2020

Excel в SQL (SSIS) - импорт более 1 файла, в каждом файле более 1 листа, а данные из Excel начинаются с 3-й строки.

Как бы Вы строите это наилучшим образом? Я знаю, как сделать каждую 1 отдельно, но вместе я попал в рассол.

Пожалуйста, помогите мне, поскольку я не нашел видео или сайты по этому поводу.

Просто чтобы уточнить - Таблицы ( в Excel) имеют одинаковый дизайн (каждый на разных листах). Некоторые файлы Excel имеют 4 листа, а некоторые - только 3.

Большое спасибо, Eyal

1 Ответ

0 голосов
/ 13 марта 2020

Предполагая, что все импортируемые файлы Excel находятся в одной папке, вы сначала создадите For-Each l oop в вашем потоке управления. Здесь вы создадите пользовательскую переменную, которой будет присвоен полный путь и имя файла для чтения файла Excel (вам нужно определить расширение .xls или .xlsx в l oop, чтобы ограничить его чтением только файлы Excel). Следующая ссылка показывает, как настроить первую часть.

Как читать данные из нескольких файлов Excel с помощью SQL Службы интеграции сервера

Внутри этого l oop затем вы создадите еще один For-Each l oop, который будет l oop по всем рабочим листам в текущем файле Excel, которые читаются. Примените следующую ссылку для выполнения этой задачи чтения строк и столбцов из каждого рабочего листа в таблицу базы данных.

Используйте SSIS для импорта всех рабочих листов из файла Excel

Внешний l oop подберет файл Excel, а внутренний l oop прочитает каждый лист, независимо от номера. Ключевым является то, что формат каждого листа должен быть одинаковым. Кроме того, используя задачу потока данных Excel, вы можете определить, с какой строки каждой таблицы начать чтение. Процесс будет продолжаться до тех пор, пока не будут прочитаны все файлы Excel.

Для целей хорошего отслеживания и аудита рекомендуется включить счетчики в автоматизированный процесс для отслеживания количества файлов и рабочих листов для каждого из них. были прочитаны. Мне также нравится сначала импортировать все записи в промежуточные таблицы, где можно выполнить любые проблемы и выполнить очистку для эффективного использования SQL, прежде чем заполнять результаты в окончательных рабочих таблицах.

Надеюсь, это все поможет.

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