gpt4 book ai didi

sql-server - SQL Server 中 XML 列中的空标记格式

转载 作者:行者123 更新时间:2023-12-05 04:07:24 26 4
gpt4 key购买 nike

我有这样的 xml:

<root>
<name></name>
</root>

当我将它保存到 XML 列并查询时,例如在 SSMS 中,它被格式化为带有自闭标签:

<root>
<name />
</root>

是否可以保留原来的格式,或者确定SELECT语句中的格式?

最佳答案

如果您正在获取非 xml 格式的数据,并且不需要自闭标记,则需要将 NULL 替换为空字符串:ISNULL([YourColumn],'')

例如:

CREATE TABLE #Sample ([name] char(1));
INSERT INTO #Sample
VALUES(NULL);


SELECT ISNULL([Name],'') AS [name]
FROM #Sample
FOR XML PATH('root');

DROP TABLE #Sample;

但是,如果您将该 xml 作为 xml 类型插入到 SQL Server 中,然后返回它,则 SQL Server 将使用自闭合标记(根据我对问题的评论)。

正如@DavidG 所说,任何好的 xml 解析器都能够读取自关闭和非自关闭标签。如果您的解析器无法读取自关闭标签,您需要考虑更新您的解析器。如果它纯粹是为了展示目的...那你为什么要使用“旧”方式来展示它?

关于sql-server - SQL Server 中 XML 列中的空标记格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48743883/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com