Cómo convertir un valor de columna de varbinary(max) a varcharen forma legible por humanos?
sql
sql-server
sql-server-2005
tsql
Bilgin Kılıç
fuente
fuente

Respuestas:
"Convertir a en
varbinaryavarchar" puede significar cosas diferentes.Si varbinary es la representación binaria de una cadena en SQL Server (por ejemplo, devuelta al convertir
varbinarydirectamente o desde las funcionesDecryptByPassPhraseoDECOMPRESS), puedeCASThacerloEste es el equivalente a usar
CONVERTcon un parámetro de estilo de0.Hay otros parámetros de estilo disponibles
CONVERTpara diferentes requisitos, como se indica en otras respuestas.fuente
SELECT CAST('This is a test' AS VARBINARY(100))que está0x5468697320697320612074657374en mi intercalación predeterminada y la convierte de nuevo en lavarcharcadena. La respuesta de Gunjan devuelve la representación hexadecimal como una cadena ('5468697320697320612074657374') Presumiblemente, esta interpretación es correcta para la necesidad del OP, ya que la aceptaron.CONVERTtiene un parámetro de estilo para seleccionar la forma que desee (mi interpretación es el estilo predeterminado) .Por lo tanto, esta respuesta puede no ser la que necesita para su caso de uso en este momento, pero es correcta para otros casos de uso. Incluyendo el interrogador original que especificó "forma legible por humanos" no hexadecimal.La siguiente expresión funcionó para mí:
Aquí hay más detalles sobre la elección del estilo (el tercer parámetro).
fuente
En realidad, la mejor respuesta es
el uso de "
2" corta el "0x" al comienzo delvarbinary.fuente
Prueba esto
fuente
Para una
VARBINARY(MAX)columna, tuve que usarNVARCHAR(MAX):O
fuente
Intenté esto, funcionó para mí:
fuente
Prueba lo siguiente, ya que estaba luchando con una publicación demasiado original [Aquí] [1]
fuente