T-SQL результат в файл - PullRequest
       26

T-SQL результат в файл

2 голосов
/ 16 сентября 2011

Я провел несколько часов в поисках без удачи сегодня. Что мне нужно сделать, это написать запрос t-sql, который будет выполнен изнутри SSMS и который должен сохранить выходные данные в файл. У меня есть полный административный доступ к серверу sql server 2008 r2, а также к ОС (я считаю, Win 2008 Server)

Я не могу использовать командную строку, командные файлы и т. Д. Это должно быть сделано прямо из SSMS как выполнение сценария t-sql.

Это даже не должно быть красиво :-) Это просто нужно сделать работу.

Я был бы очень признателен за любую помощь.

С уважением Мариуш

Ответы [ 3 ]

5 голосов
/ 16 сентября 2011

Запрос> Результаты к> Результаты в файл

Вы также можете выбрать все на панели результатов и щелкнуть правой кнопкой мыши верхнюю левую ячейку. Существует опция «Сохранить результаты как», которая позволит вам сохранить результаты в формате CSV.

Если вы ищете что-то более продвинутое, я бы предложил обратиться к службам SSIS (службы интеграции SQL Server), которые являются заменой DTS. Это то, что обычно используется для экспорта файлов данных (DFE)

EDIT

Если вам нужно экспортировать результаты в файл с помощью скрипта, попробуйте следующее:

INSERT INTO OPENROWSET ('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;Database=c:\Test.xls;','SELECT productid, price FROM dbo.product') 
1 голос
/ 16 сентября 2011

Я могу придумать два варианта, учитывая ваши ограничения

  • BCP будет лучшим вариантом, используйте его с опцией запроса Я расположен на bcp как утилита командной строки.

  • Создайте задание агента sql, состоящее из одного шага - команды ОС. Задание состоит из одного шага, который запускает sqlcmd, который выполняет запрос и перенаправляет вывод в файл. После создания задания скрипт запускает его, а затем удаляет задание и любую историю. Это отличное решение, которое порадует Рубе Голдберга , но удовлетворит требования полного выполнения с помощью SSMS / автоматизированного подхода.

1 голос
/ 16 сентября 2011

Если вы находитесь в SSMS, параметр для вывода в текстовый файл - это один из параметров «Результаты в ...» на панели инструментов рядом с кнопкой «Выполнить».Вы пытаетесь заняться чем-то более программным?

Если у вас есть разрешение на выполнение xp_commandshell из SSMS, вы можете воспользоваться некоторыми приемами, предложенными псевдонимным Филом Фактором на http://www.simple -talk.com / SQL / TSQL-программирование /-БЛИЦ-оф-текстовых файлов / .

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