Cómo pasar campo hexadecimal a string en Oracle
Resulta que el día de ayer me pidieron buscar unas transacciones perdidas en una tabla de errores.Acepte sin saber que el campo de la tabla que contiene la información del error está codificado en formato hexadecimal.
El campo está guardado como Raw bytes de acuerdo a la documentación de la tabla.
Además de esto el campo es tipo CLOB lo cual como saben puede tener cadenas muy grandes.
Y pues ahi me tienen buscando cómo pasar de hexadecimal a string en Oracle con algún query.
Al final di con una función de Oracle para pasar el campo que estaba como Raw bytes
SELECT UTL_RAW.CAST_TO_VARCHAR2('686f6c6121')
FROM dual;
La misma cadena en mayúsculas producirá lo mismo
SELECT UTL_RAW.CAST_TO_VARCHAR2('686F6C6121')
FROM dual;
Resultado:
hola!
Espero les sirva.