Я работаю над пакетом SSIS в VS 2010 для экземпляра 2012 года. Я импортирую плоские файлы у поставщика, который не будет чистить свои данные. Я не могу выйти за рамки «Flat File Source», потому что данные настолько искажены, что они зависают и не будут продолжать синтаксический анализ.Недействительные данные приводят к повреждению плоского файла SSIS для зависания
Вот пример хороших данных с заголовками:
EventID|AccountID|ListID|ID|Date
1|3000|20030|1092997696|10-Nov-2014 09:36:13
Вот плохие данные, которые (и) будет/ИНГ захвачена обработки ошибок:
1|3000|20030|1092997696;ҧ��DAVNJ��|11-Nov-2014 06:40:28
Вот данные, висит мой пакет:
1|3000|20030|1092997696ci[
a5��~[�t:RW�uXXïA,u��ïn��I� �JA!QXQ|11-Nov-2014 08:27:27
Как с этим справиться? Помните, что я не могу выйти за рамки простого анализа синтаксиса файла, чтобы использовать производную задачу column/conditional split/script.
Спасибо заранее! Kirsten
Кажется, у вас есть возврат каретки. Библиотека синтаксического анализа SSIS остановится в этой строке и сообщит, что у вас короткая строка. – billinkc
В таком случае я был бы склонен писать препроцессор файла в «технологии по вашему выбору», чтобы перевести плохие файлы в то, что SSIS не собирается запугать. Я знаю, двойная обработка, в чем смысл использования инструмента, если он не может этого сделать, и т. Д. И т. Д. Я просто пытаюсь предложить подход, основанный на ограничениях. – billinkc
Согласен с billinkc. Чтобы сделать рекомендацию о том, как сделать предварительную обработку, нам нужно знать немного больше об ограничениях. Существуют ли какие-либо правила, которые гарантированы, даже если данные плохие? Например, будут ли трубы отображаться только как разделители и всегда появляться, когда они должны? Если это так, вы, вероятно, можете легко очистить файл с помощью задачи сценария C#/VB. –