假設我有一筆Binary的資料,請問我要如何轉為base64
,再轉型為sql_variant
呢?
declare @value varbinary(max)=0x4100410041002E0050004E004700
//上網看到這個方法,但嘗試過後看起來是被截斷而未做轉型
select convert(sql_variant,
(select cast('' as xml).value('xs:base64Binary
(sql:variable(''@value''))', 'varbinary')
)
)
我這裡提供幾個方式將varbinary
轉成Base64
編碼
select cast('' as xml)
.value('xs:base64Binary(sql:variable("@value"))', 'varchar(max)')
select @value as '*' for xml path('')
select *
from (select @value as '*') Tbl
for xml path('')
石頭,謝謝您,經過嘗試以後是可行的,但想詢問以下幾個問題 :
@value
轉成base64Binary
之後再轉成varchar(max)
嗎?select cast('' as xml)
.value('xs:base64Binary(sql:variable("@value"))', 'varchar(max)')
base64Binary
的資料型態基本上就是varchar(max)
嗎?varchar(max)
嗎?以上再麻煩您了 > < 謝謝!