В SQL Server 2008 R2 при сохранении результатов в виде CSV заголовки отсутствуют. Я могу обойти это путем копирования и вставки с помощью «Копировать с заголовками», или просто захватить заголовки и вставить их в CSV и т. Д., Но есть ли лучший способ сделать это?
sql-server
sql-server-2008-r2
ssms
csv
Кайл Брандт
источник
источник
Ответы:
В SSMS вам нужно изменить некоторые параметры:
Инструменты - Параметры - Результаты запроса - SQL Server - результаты в сетке (или текст) -> Включить заголовки столбцов при копировании или сохранении результатов .
Измененные настройки применяются к новым, но не существующим окнам запросов.
источник
Я вижу, что вы четко заявили, что ищете решение в SSMS, но я подумал, что предоставлю решение PowerShell, если оно поможет (SQLPS доступен из SSMS 2008 и 2008 R2).
Вы можете использовать SQLPS (или обычный PowerShell с оснасткой командлета SQL), чтобы выполнить что-то вроде этого:
Я могу продолжать с этим примером, если вам интересно.
источник
Если вам нравится подход сценария PowerShell, у меня есть сценарий, который экспортирует в CSV из SSMS через PowerShell . Мне нравится, что до сих пор у вас может быть динамический сценарий SQL, черт возьми, вы можете выбрать любой текст, и SSMS передает его сценарию в качестве аргумента.
Единственным недостатком является то, что я не нашел умный способ пройти через соединение текущего окна. Мой текущий обходной путь - настроить разные инструменты, которые различаются только по строкам подключения, например, PROD_DW, PROD_DB, TEST_DW ...
источник
Вы можете сделать объединение всех соединений, чтобы явно добавить заголовки столбцов в виде единого выбора строки, объединенного с реальными строками, например:
Самая большая проблема при таком подходе - принудительное приведение к символьному типу данных во втором выборе.
источник
SSMS не является инструментом экспорта данных. Используйте мастер импорта / экспорта или BCP, оба из которых были разработаны как инструменты экспорта данных и будут делать то, что вы хотите сделать.
источник