0

请帮助我

我有一个返回结果集的查询...我使用FOR XML AUTO. 如何将该 XML 文件保存到我的硬盘上的文件中C:Temp\Test.XML

SELECT * FROM MENU_MAST FOR XML AUTO 

我也试过这个

declare @cmd nvarchar(255);
select @cmd = 'bcp "select * FROM MENU_MAST row for xml auto, root(''rows''), elements" ' +
              'queryout "d:\temp\sample.xml" -S UMSDEV -T -w -r -t';

exec xp_cmdshell @cmd;

这将返回我想将它作为查询本身的 XML 文件导出到硬盘位置的 XML。请帮助我。

4

2 回答 2

0

SQL Server 不是文件 IO 应用程序。

正如您所发现的,有多种方法可以实现这一点,但在一定程度上,所有这些方法都是使 SQL Server 做它不打算做的事情的变通方法和障碍。

作为您xp_cmdshell很少推荐的替代品,您可以考虑

  • 一个CLR存储过程
  • SSIS 包
  • 用另一种语言编写一些应用程序逻辑作为离散应用程序。
于 2013-08-21T07:39:39.443 回答
-1

将该 XML 发送到您的前端代码并尝试从那里导出

于 2013-08-21T07:41:44.097 回答