如何解码 SQL 中的 XML 个实体?

How to decode XML entities in SQL?

如何将 convert/decode 格式的文本 غلامحسين 转换为普通文本?我正在使用 SQL 服务器 2012。我只想将它们全部更新为普通文本。

如果您知道名字和姓氏在解释为 XML 时是有效的,那么这样做:

UPDATE _table_
SET Firstname = CONVERT(NVARCHAR(MAX), CONVERT(XML, FirstName)), 
Lastname = CONVERT(NVARCHAR(MAX), CONVERT(XML, LastName))

XML 解析器将为您解码实体。

出于某种原因,Jeroen 的回答似乎在 SQL Server 2016 中对我不起作用。

下面的函数有效...原理相同,只是执行方式不同。

create function dbo.xmlDecode (@string nvarchar(max))
returns varchar(max)
begin
    return cast(@string as XML).value('.[1]','nvarchar(max)' )
end;