In Oracle Database, de RAWTOHEX()
functie converteert een onbewerkte waarde naar hexadecimaal.
Syntaxis
De syntaxis gaat als volgt:
RAWTOHEX(raw)
Waar raw
kan elk scalair gegevenstype zijn, behalve LONG
, LONG
RAW
, CLOB
, NCLOB
, BLOB
, of BFILE
.
Als het argument van een ander gegevenstype is dan RAW
, dan zet de functie het argument om in een RAW
waarde met hetzelfde aantal databytes.
Voorbeeld
Hier is een voorbeeld:
SELECT RAWTOHEX(HEXTORAW('374a5cfe')) FROM DUAL;
Resultaat:
374A5CFE
Hier gebruikte ik de HEXTORAW()
functie om de hexadecimale string om te zetten naar RAW
, en vervolgens RAWTOHEX()
om het terug te converteren.
Nullargument
Als het argument null
is , het resultaat is null
:
SET NULL 'null';
SELECT RAWTOHEX(null)
FROM DUAL;
Resultaat:
null
Standaard retourneren SQLcl en SQL*Plus een spatie wanneer een null-waarde optreedt als resultaat van een SQL SELECT
verklaring.
U kunt echter SET NULL
gebruiken om een andere tekenreeks op te geven die moet worden geretourneerd. Hier heb ik gespecificeerd dat de string null
moet worden geretourneerd.
Ongeldig aantal argumenten
Bellen RAWTOHEX()
zonder argumenten resulteert in een fout:
SELECT RAWTOHEX()
FROM DUAL;
Resultaat:
SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments"
En het doorgeven van te veel argumenten resulteert ook in een fout:
SELECT RAWTOHEX('a', 'b')
FROM DUAL;
Resultaat:
SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments"