2017-01-16 4 views
0

Я загружаю плоский файл в базу данных SQL. Плоский файл разделен запятой. Некоторые значения столбцов имеют запятую без инкапсуляции в двойные кавычки (например, HPPV, TIRE). Теперь, когда я пытаюсь использовать запятую в качестве классификатора текста, я получаю сообщение о том, что разделитель столбцов и спецификатор текста не могут быть одинаковыми.Как использовать запятую как разделитель столбцов и классификатор текста

Я хочу как-то использовать запятую в качестве текстового определителя, чтобы плоский файл сохранял значение - HPPV, TIRE, как на одном объекте - HPPVTYRE или HPPV TIRE, вместо того, чтобы проливать его на следующий столбец.

Можно ли использовать запятую в качестве разделителя текста, это уже разделитель столбцов ?????

+0

Не имеет смысла. Можете ли вы не работать с тем, кто предоставил вам этот файл, чтобы предоставить альтернативную версию, где они сделали что-то здравомыслящее? Текстовые разделители предназначены для использования парами и используются для обозначения того, что в такой паре разделитель запятой не должен интерпретироваться как таковой. Если они были одним и тем же персонажем, как вы, или я, или компьютер, возможно, знаете, когда он сталкивается с таким символом, либо «это разделитель запятой, который защищен текстовыми разделителями», либо «это конец раздела с разделителями текста ". –

+0

Или, говоря иначе, я предполагаю, что ваше предложение работает. Вот некоторые данные для 3 столбцов, одна из которых содержит встроенную запятую - 'aaa, bbb, ccc, ddd'. Если вы можете указать * me *, какой из столбцов содержит встроенную запятую, пожалуйста, объясните, как это работает. –

+0

Насколько велик исходный файл? Как насчет разделения исходного файла на хорошие строки и неправильные строки? Создайте соединитель исходного файла, который читается во всей строке. Создайте поток данных с файлом Flatfile, который использует это новое соединение, чтобы читать исходный файл в виде строк. Используйте Derived Column для добавления столбца CommaCount 'LEN ([LineColumn]) - LEN (REPLACE ([LineColumn],", "," "))', используйте условный split для отправки любых строк с 'CommaCount> 10' для новый объект flatfile. Затем обработайте эти два файла по-разному. –

ответ

0

Нет, я так не думаю, но я искал и нашел this article, что может помочь.

 Смежные вопросы

  • Нет связанных вопросов^_^