2013-02-12 1 views
0

У меня есть простая команда BCP для запроса моей базы данных MSSQL и скопировать результат в CSV-файл, например так:BCP SQL команда в CSV-файл имеет форматирование вопроса

bcp "select fullname from [database1].[dbo].employee" queryout "c:\test\table.csv" -c -t"," -r"\n" -S servername -T 

Проблема возникает, когда колонок ПолноеИмя является варчаром, разделенным запятой, как «Ли, Брюс». Когда результат копируется в CSV-файл, часть перед запятой (Lee) помещается в первый столбец в электронной таблице Excel, а часть после запятой (Bruce) помещается во второй столбец. Я бы хотел, чтобы он сохранил все в первом столбце и сохранил запятую (Lee, Bruce). Кто-нибудь знает, как это достичь?

ответ

2

Очевидно, вы должны установить разделитель столбцов на нечто иное, чем запятую. Я не знаком с приведенным выше синтаксисом, но я думаю, что они: -c -t"," -r"\n" - столбцы и новые разделители строк соответственно.

Далее вы должны либо изменить разделитель CSV по умолчанию в региональных настройках, либо использовать мастер импорта для правильного размещения данных в Excel. Кстати, на SO есть много подобных вопросов.

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