0

我只需要创建一个包含从单个数据库列中选择的 XML 的文件。

  • 这适用于 SSMS select outputfield from xmltab -- 在网格中选择返回的 XML do Save-As output..xml 这会生成一个格式良好的文件,并带有适当的行结尾。在浏览器中查看文件适当地格式化 XML 等。

  • 这不起作用 EXEC xp_cmdshell 'bcp "SELECT [outputfield] FROM [coTemp].[dbo].[xmltab] FOR XML RAW, BINARY BASE64" queryout \\prdfiles\files\Test\ProvidersFromBCP_T.xml -c -T'

(它会创建一个格式不正确的文档 - 行尾似乎是错误的,并且该文件在浏览器中不可读。

我已经尝试了 BCP 上的各种开关,比如选择不同的行尾等,以及查询的 FOR XML 子句上的各种模式——比如删除二进制基数 64,但结果相似。

这是因为 SSMS 网格表示会自动格式化吗?也许我必须创建一个格式文件?

我试图保持简单,因为它是非常偶尔需要提取的,但 SSMS 似乎内存不足。

任何关于如何使它工作的想法都非常感谢!

史蒂夫

4

1 回答 1

0

也许您应该考虑使用 SQL Server Integration Services 来生成 XML 输出。这里有很多答案提到如果你被卡住了怎么做。

于 2013-09-03T04:30:50.313 回答