In Oracle Database, il RAWTONHEX()
converte un valore grezzo in esadecimale.
È simile a RAWTOHEX()
funzione, tranne per il fatto che il suo valore viene sempre restituito nel set di caratteri nazionale.
Sintassi
La sintassi è questa:
RAWTONHEX(raw)
Esempio
Ecco un esempio:
SELECT
RAWTONHEX(HEXTORAW('f9')) AS "Result",
DUMP(RAWTONHEX(HEXTORAW('f9'))) AS "Dump"
FROM DUAL;
Risultato:
Result Dump _________ _________________________ F9 Typ=1 Len=4: 0,70,0,57
Qui, ho usato HEXTORAW()
funzione per convertire una stringa esadecimale in RAW
, quindi utilizzato RAWTONHEX()
per riconvertirlo. L'output di DUMP()
mostra che il tipo di dati restituito è di tipo 1.
Argomento nullo
Se l'argomento è null
, il risultato è null
:
SET NULL 'null';
SELECT RAWTONHEX(null)
FROM DUAL;
Risultato:
null
Per impostazione predefinita, SQLcl e SQL*Plus restituiscono uno spazio vuoto ogni volta che si verifica un valore nullo come risultato di un SQL SELECT
dichiarazione.
Tuttavia, puoi usare SET NULL
per specificare una stringa diversa da restituire. Qui ho specificato che la stringa null
deve essere restituito.
Conteggio argomenti non valido
Chiamata a RAWTONHEX()
senza alcun argomento genera un errore:
SELECT RAWTONHEX()
FROM DUAL;
Risultato:
SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments"
E anche il passaggio di troppi argomenti provoca un errore:
SELECT RAWTONHEX('a', 'b')
FROM DUAL;
Risultato:
SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments"