SQL 解压缩 GZIP

SQL Decompress GZIP

我们需要将 GZIP 压缩数据发送到我们的总部,并以压缩字符串的形式接收回复。 很容易转换成我们需要发送的字符串:

declare @MyTable_Compressed as table (a varbinary(max))
insert into @MyTable_Compressed
select compress('abc') from @MyTable_Uncompressed

但是,我们的 HO 现在将他们的字符串作为回复发回给我们:

"0x1F8B08000000000004004B61486548630000FF27F81D06000000"

如何解压这个字符串,使纯文本显示为 "def"?

我试过了,但出现错误(参数数据类型 varchar 对于 Decompress 函数的参数 1 无效。)

select cast(decompress('0x1F8B08000000000004004B61486548630000FF27F81D06000000') as nvarchar(max)) as ReadableText

不要将压缩值括在撇号中。尝试使用 varchar 而不是 nvarchar。

select cast(decompress(0x1F8B08000000000004004B61486548630000FF27F81D06000000) as varchar(max)) as ReadableText