В настоящее время я получаю ежедневный файл размером около 750 тыс. Строк, каждая строка имеет трехзначный идентификатор в начале.
Для каждого идентификатора количество столбцов может изменяться, но оно зависит от идентификатора (например, SRH всегда будет иметь 6 столбцов, AAA всегда будет иметь 10 и т. Д.).
Я хотел бы иметь возможность автоматизировать этот файл в таблицу SQL через SSIS.
Это решение в настоящее время встроено в MSACCESS с использованием VBA, просто просматривая наборы записей с помощью оператора CASE, затем записывает запись в соответствующую таблицу.
Я читал о BULK INSERT, BCP (с форматным файлом) и Условном разделении в SSIS, однако я всегда застреваю при первом затруднении даже при загрузке файла в виде ошибок SSIS из-за переменных макетов столбцов.
Файл данных с разделителями каналов и выглядит примерно так, как показано ниже.
AAA|20180910|POOL|OPER|X|C
SRH|TRANS|TAB|BARKING|FORM|C|1.026
BHP|1
*BPI|10|16|18|Z
BHP|2
*BPI|18|21|24|A
(* Я добавил *, чтобы показать, что это дочерние записи родительской записи, в этом случае BHP может иметь несколько записей BPI под ним)
Я хотел бы иметь возможность загружать файл TXT в промежуточную таблицу, а затем я могу написать TSQL для циклического прохождения записей и анализа их в соответствующих таблицах (AAA - tblAAA, SRH - tblSRH ...)