Как написать в текстовый файл в SQL Server 2008 - PullRequest
2 голосов
/ 08 февраля 2012

Как мне вывести текстовый файл на жесткий диск пользователя из SQL Server 2008? В этом сценарии жесткий диск пользователя - это тот же жесткий диск, на котором установлен SQL Server.

Я не хочу, чтобы вывод представлял собой файл .csv или xml, просто текст. Мне также нужно сделать это в коде. Я не хочу, чтобы пользователю приходилось каждый раз вручную нажимать кнопку экспорта или другую кнопку с графическим интерфейсом. Я планирую включить эту функцию в хранимую процедуру.

Ответы [ 3 ]

4 голосов
/ 08 февраля 2012

Вы забыли упомянуть, какую версию SQL Server вы используете, но, предполагая SQL Server 2005 или выше, я бы использовал для этого SQLCLR, а не xp_cmdshell или sp_OACreate. См. самый ранний ответ на этот вопрос .

2 голосов
/ 08 февраля 2012

Вы можете сделать это с помощью sp_OACreate 'Scripting.FileSystemObject'.

1 голос
/ 08 февраля 2012

Может быть, попробовать BCP?http://msdn.microsoft.com/en-us/library/ms162802.aspx

Может возникнуть проблема с передачей его непосредственно на жесткий диск пользователя в зависимости от настроек сети.Возможно, стоит попробовать.

bcp TABLENAME out ВАРИАНТЫ ФАЙЛАПАТА

...