In der Oracle-Datenbank das RAWTOHEX()
Funktion wandelt einen Rohwert in hexadezimal um.
Syntax
Die Syntax lautet wie folgt:
RAWTOHEX(raw)
Wobei raw
kann jeder skalare Datentyp außer LONG
sein , LONG
RAW
, CLOB
, NCLOB
, BLOB
, oder BFILE
.
Wenn das Argument einen anderen Datentyp als RAW
hat , dann konvertiert die Funktion das Argument in ein RAW
Wert mit der gleichen Anzahl von Datenbytes.
Beispiel
Hier ist ein Beispiel:
SELECT RAWTOHEX(HEXTORAW('374a5cfe')) FROM DUAL;
Ergebnis:
374A5CFE
Hier habe ich den HEXTORAW()
verwendet Funktion zum Konvertieren der hexadezimalen Zeichenfolge in RAW
, dann verwendet RAWTOHEX()
zurück konvertieren.
Null-Argument
Wenn das Argument null
ist , ist das Ergebnis null
:
SET NULL 'null';
SELECT RAWTOHEX(null)
FROM DUAL;
Ergebnis:
null
Standardmäßig geben SQLcl und SQL*Plus ein Leerzeichen zurück, wenn als Ergebnis eines SQL-SELECT
ein Nullwert auftritt Aussage.
Sie können jedoch SET NULL
verwenden um eine andere Zeichenfolge anzugeben, die zurückgegeben werden soll. Hier habe ich angegeben, dass der String null
zurückgegeben werden soll.
Ungültige Argumentanzahl
Aufruf von RAWTOHEX()
ohne Argumente führt zu einem Fehler:
SELECT RAWTOHEX()
FROM DUAL;
Ergebnis:
SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments"
Und das Übergeben zu vieler Argumente führt ebenfalls zu einem Fehler:
SELECT RAWTOHEX('a', 'b')
FROM DUAL;
Ergebnis:
SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments"