在存储过程中将 SQL 查询结果转换为 Base64string

Convert SQL query result to Base64string in stored procedure

我有一个存储过程,它执行一个 select 语句,结果是一个很大的 XML。

有没有办法在同一个存储过程中将整个 XML 转换为 base-64 字符串?显示的结果应该变成 base-64 字符串。

select 语句如下所示:

Select * 
From Anvandare 
For Xml Raw, Root('<rootName>')

我想做的是这样的:

CAST(Select * from Anvandare For Xml Raw, Root('<rootName>') as Base64)

仅供参考:我知道这是错误的,但我希望你能理解这个想法。

返回的 XML 相当大,有 1000 条记录。

对于 XML 到 Base64,这可能有效。

SELECT CAST((SELECT * FROM Anvandare FOR Xml Raw, Root('rootName')) as varbinary(max)) FOR XML PATH(''), BINARY BASE64

从 Base64 转换回 XML

SELECT CAST( CAST( 'c3RyaW5n' as XML ).value('.','varbinary(max)') AS varchar(max) )

希望对您有所帮助!!!