Сохранить Sql Recordset в CSV-файл с хорошо отформатированным? - PullRequest
1 голос
/ 27 ноября 2009

Мне нужно вывести мой результат запроса sql в текстовый файл. я создал следующий запрос,

DECLARE @cmd VARCHAR(2048) 

SET @cmd = 'OSQL -Slocalhost ' 
            + ' -UCRN370 -PCRN370' 
            + ' -Q"SELECT TOP 5 GageId FROM EwQMS370..msgages"' 
            + ' -oc:\authors.csv' 

EXEC master..xp_cmdshell @cmd, NO_OUTPUT

Приведенный выше запрос создал CSV-файл авторов. CSV. Но содержимое файла не отформатировано должным образом. Они показали некоторые ненужные данные.

Мне нужно создать отформатированный CSV-файл.

1 Ответ

0 голосов
/ 27 ноября 2009

Вы можете сделать это с BCP, CLR, SSIS или DTS, учитывая, что ваш пример BCP, вероятно, лучше всего подходит.

BCP EwQMS370..msgages out c:\Authors.csv -c -t, -T –S<servername>

Вы все еще можете запустить это через xp_cmdshell так же, как в своем примере; только BCP сделает тяжелую работу по форматированию CSV за вас. Booksonline будет проходить через BCP более подробно. Если вам нужно выбрать меньше столбцов из таблицы, создайте представление для ограничения данных.

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