Сбой пакета служб SSIS, не перенаправляет строки ошибок - PullRequest
0 голосов
/ 19 сентября 2019

У нас есть пакет служб SSIS для импорта данных из плоского файла CSV в таблицу на SQL Server.Файл состоит из нескольких сотен строк данных, разделенных запятой (,) с текстовыми данными, квалифицированными двойными кавычками ("), но не все текстовые столбцы квалифицируются двойными кавычками. Проблема возникает, когда строка не являетсяквалифицируемый кавычками (") содержит запятую (,).Это приводит к сбою пакета со следующей ошибкой

[Исходные данные [130]] Ошибка: не найден разделитель столбца для столбца "ColumnX".

Я пыталсяперенаправить плохие строки в другое место назначения плоского файла, но пакет не перенаправляет плохие строки, а его ошибка

1 Ответ

1 голос
/ 19 сентября 2019

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

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

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