varbinary в строку на SQL Server
Как преобразовать значение столбца varbinary(max)
до varchar
в удобочитаемой форме?
4 ответа:
" преобразование a
varbinary
доvarchar
" может означать разные вещи.если varbinary является двоичным представлением строки в SQL Server (например, возвращается путем приведения к
varbinary
непосредственно или сDecryptByPassPhrase
илиDECOMPRESS
функции) вы можете простоCAST
этоdeclare @b varbinary(max) set @b = 0x5468697320697320612074657374 select cast(@b as varchar(max)) /*Returns "This is a test"*/
это эквивалент использования
CONVERT
с параметром стиль0
.CONVERT(varchar(max), @b, 0)
другие параметры стиля доступны с
CONVERT
для различных требования, как указано в других ответах.
для меня работало следующее выражение:
SELECT CONVERT(VARCHAR(1000), varbinary_value, 2);
здесь более подробно о выборе стиля (третий параметр).