【发布时间】:2018-04-23 17:57:25
【问题描述】:
以下代码行为我生成了一个类似于以下集合的 XML 文件,这对我的客户来说几乎是可以接受的。我说几乎是因为我需要有一个更改 <?xml version="1.0" encoding="UTF-8"?> 与标准 <?xml version="1.0"> 相比,它位于我使用下面的 EXEC xp_cmdshell 命令生成的每个 XML 文件的顶部。我基本上需要<?xml version="1.0" encoding="UTF-8"?> 而不是<?xml version="1.0">。有人可以告诉我这是如何实现的吗?
-- SQL CODE USED TO GENERATE XML FILE - Using XML Path
SET @FileString = @FileName + '.xml" -S ALSCG-JPATHIL\SQLEXPRESS -T -c -t,'
SET @SQLSTRING = 'bcp ";WITH XMLNAMESPACES (DEFAULT ''urn:CP-xml'') select A.TargetSystem AS ''Header/Target'' from [Header] A FOR XML PATH(''Qty'')" queryout "C:\Program Files\'
SET @SQLSTRING = @SQLSTRING + @FileString
EXEC xp_cmdshell @SQLSTRING
-- XML FILE CONTENTS GENERATED - Missing the Encoding Condition here
<?xml version="1.0">
<Qty xmlns="urn:CP-xml">
<Header>
<Target></Target>
</Header>
</Qty>
-- XML FILE CONTENTS DESIRED - Note only difference is the Encoding!
<?xml version="1.0" encoding="UTF-8"?>
<Qty xmlns="urn:CP-xml">
<Header>
<Target></Target>
</Header>
</Qty>
【问题讨论】:
标签: sql sql-server tags for-xml-path