SQL Server 中 XML 中的自闭合标记 [英] Self-closing tags in XML in SQL Server
本文介绍了SQL Server 中 XML 中的自闭合标记的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在使用 SQL 查询将结果作为在 SQL 服务器中使用的 XML 返回.我正在使用以下 SQL 查询-
I am using the SQL Query to return the result as XML using in SQL server. I am using the below SQL Query-
SELECT '1' AS [Column1]
UNION
SELECT '2' AS [Column2]
UNION
SELECT '' AS [Column3]
FOR XML PATH('Test'), ROOT('Rows')
结果 XML:
<Rows>
<Test>
<Column1></Column1>
</Test>
<Test>
<Column1>1</Column1>
</Test>
<Test>
<Column1>2</Column1>
</Test>
</Rows>
输出如下:
<Rows>
<Test>
<Column1/>
</Test>
<Test>
<Column1>1</Column1>
</Test>
<Test>
<Column1>2</Column1>
</Test>
</Rows>
任何帮助将不胜感激.提前致谢.
Any help would be appreciate. Thanks in Advance.
推荐答案
实际上,如果我们将 XML 放入内部,那么它将返回标签作为自关闭.请看下面的SQL代码:
Actually If we inner the XML then it will return the Tag as self closing. Please see the below SQL code:
DECLARE @TempData Table
(
Column1 NVARCHAR(250)
)
INSERT INTO @TempData values('Column1')
INSERT INTO @TempData values('Column2')
INSERT INTO @TempData values('')
SELECT
(
SELECT * FROM @TempData FOR XML PATH('Test'), Type
)
For XML PATH (''),
ROOT('Rows')
输出:
<Rows>
<Test>
<Column1>Column1</Column1>
</Test>
<Test>
<Column1>Column2</Column1>
</Test>
<Test>
<Column1 />
</Test>
</Rows>
这篇关于SQL Server 中 XML 中的自闭合标记的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文