Я должен импортировать файл (возможно .csv или .txt) через SSIS-пакет. Проблема заключается в том, что файл является файлом Excel на данный момент, и написано очень читаемый человеком, который означает, что он выглядит примерно так:Импортировать файл excel с неправильным порядком столбцов
Name1; имя_столбца1; Данные; Данные; Данные; ...
Наименование1; имя_столбца2; Данные; Данные; Данные; ...
Наименование1; ColumnName3; Данные; Данные; Данные; ...
Наименование2; имя_столбца1; Данные; Данные; Данные; ...
Наименование2; имя_столбца2; Данные; Данные; Данные; ...
Дело в том, что мне нужен заказ на совместимость с базой данных для импорта. Я попытался импортировать все в фиктивную таблицу с такими столбцами, как Value0, Value1, Value3, ... так же, как этот файл выглядит в данный момент, а затем динамически создавать новую таблицу с именами столбцов, которые являются значениями, содержащимися в Value1 моего манекена. Но как я могу вставить значения в правый столбец? А также я не думаю, что это хороший способ импорта файлов ... (надеюсь, вы понимаете, что я имею в виду)
Кто-нибудь есть идеи, как обрабатывать эти файлы?
Заранее благодарен!
Похоже способ пойти, но у меня две проблемы с этим ... Прежде всего, я забыл сказать, что я использую базу данных MSSQL (не означает, что нет group_concat), но я думаю, что смогу обойти это. И вторая проблема заключается в том, что я понятия не имею, как получить значения вместе. Я попытался вставить все, кроме как получить ошибку, что данные будут длинными («String или двоичные данные будут усечены».) –
если у вас есть excel вы можете использовать функцию concatenate, чтобы объединить все значения вместе, либо увеличить размер столбца в sql, либо использовать тип текстового столбца для вставки большого количества данных. – thepiyush13
в порядке с проблемой с длинными данными (иногда я немного глуп. .. Я установил тип данных в varchar (50): D) ... –