在存储过程中将 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) )
希望对您有所帮助!!!
我有一个存储过程,它执行一个 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) )
希望对您有所帮助!!!