删除 xml 属性的错误代码 -- MS SQL For xml (_x003D)
Remove error code for xml attribute -- MS SQL For xml (_x003D)
我有以下 sql 代码来生成 xml.
的块
SELECT top 1
'http://www.crsoftwareinc.com/xml/ns/titanium/common/v1_0' AS [xmlns],
(SELECT top 1
count(*)AS 'number-of-accounts',
--
-- TO DO
--
FOR XML PATH('payment-import-header'), TYPE),
FOR XML RAW ('consumer-payment-import-job');
输出是这样的:
如何去掉属性名称中的“_x003D”?如果我插入“=”或“@”,它将添加另一个随机值。我假设这些是错误标签。
谢谢
您使用 WITH XMLNAMESPACES
子句和 DEFAULT
关键字添加默认命名空间。
示例:
WITH XMLNAMESPACES(DEFAULT 'http://www.crsoftwareinc.com/xml/ns/titanium/common/v1_0')
SELECT 1
FOR XML PATH('consumer-payment-import-job');
有结果
<consumer-payment-import-job xmlns="http://www.crsoftwareinc.com/xml/ns/titanium/common/v1_0">1</consumer-payment-import-job>
我有以下 sql 代码来生成 xml.
的块SELECT top 1
'http://www.crsoftwareinc.com/xml/ns/titanium/common/v1_0' AS [xmlns],
(SELECT top 1
count(*)AS 'number-of-accounts',
--
-- TO DO
--
FOR XML PATH('payment-import-header'), TYPE),
FOR XML RAW ('consumer-payment-import-job');
输出是这样的:
如何去掉属性名称中的“_x003D”?如果我插入“=”或“@”,它将添加另一个随机值。我假设这些是错误标签。
谢谢
您使用 WITH XMLNAMESPACES
子句和 DEFAULT
关键字添加默认命名空间。
示例:
WITH XMLNAMESPACES(DEFAULT 'http://www.crsoftwareinc.com/xml/ns/titanium/common/v1_0')
SELECT 1
FOR XML PATH('consumer-payment-import-job');
有结果
<consumer-payment-import-job xmlns="http://www.crsoftwareinc.com/xml/ns/titanium/common/v1_0">1</consumer-payment-import-job>