粘贴到编辑器时,SSMS 可以缩进 xml 吗?

Can SSMS indent xml when pasting into Editor?

SSMS - SQL Server 2014 是否有自动缩进 XML 文本的选项?

我将 XML 文本保存在列 (nvarchar(max)) 中以分析应用程序的输入。

通常我的查询结果设置为网格,我将结果复制并粘贴到查询编辑器中进行阅读。

这是我得到的:

<?xml version="1.0"?><farm-confirm source="orders.company.com"><Detail><item_keyid>3207890</item_keyid><item_code>50002035</item_code></Detail></farm-confirm>

这就是我想要的:

<?xml version="1.0"?>
<farm-confirm source="orders.company.com">
    <Detail>
        <item_keyid>3207890</item_keyid>
        <item_code>50002035</item_code>
    </Detail>
</farm-confirm>

谢谢

鉴于 XML 格式正确,执行此操作很容易:

DECLARE @xml XML=N'Put your XML here';
SELECT @xml;

(输出到网格视图)

现在只需单击 XML。 XML-Viewer 将显示它的格式和缩进。

或者使用免费的在线 XML prettyzizers 之一。

仅 google online pretty xml formatter

更新

如果您从查询中得到 XML(在您的情况下实际上是一个字符串),您可能只需用 CAST(MyColumn AS XML) 包裹该列。这将立即为您提供 XML-Viewer...