sql >> Databasteknik >  >> RDS >> Oracle

RAWTONHEX() Funktion i Oracle

I Oracle Database, RAWTONHEX() funktion konverterar ett råvärde till hexadecimalt.

Det liknar RAWTOHEX() funktion, förutom att dess värde alltid returneras i den nationella teckenuppsättningen.

Syntax

Syntaxen ser ut så här:

RAWTONHEX(raw)

Exempel

Här är ett exempel:

SELECT 
    RAWTONHEX(HEXTORAW('f9')) AS "Result",
    DUMP(RAWTONHEX(HEXTORAW('f9'))) AS "Dump"
FROM DUAL;

Resultat:

   Result                      Dump 
_________ _________________________ 
F9        Typ=1 Len=4: 0,70,0,57   

Här använde jag HEXTORAW() funktion för att konvertera en hexadecimal sträng till RAW , använde sedan RAWTONHEX() för att konvertera tillbaka den. Utdata från DUMP() funktionen visar att den returnerade datatypen är av typ 1.

Nollargument

Om argumentet är null , resultatet är null :

SET NULL 'null';
SELECT RAWTONHEX(null)
FROM DUAL;

Resultat:

null

Som standard returnerar SQLcl och SQL*Plus ett tomt utrymme när ett nollvärde inträffar som ett resultat av en SQL SELECT uttalande.

Du kan dock använda SET NULL för att ange en annan sträng som ska returneras. Här specificerade jag att strängen null bör returneras.

Ogiltigt antal argument

Anropar RAWTONHEX() utan några argument resulterar i ett fel:

SELECT RAWTONHEX()
FROM DUAL;

Resultat:

SQL Error: ORA-00909: invalid number of arguments
00909. 00000 -  "invalid number of arguments"

Och att skicka för många argument resulterar också i ett fel:

SELECT RAWTONHEX('a', 'b')
FROM DUAL;

Resultat:

SQL Error: ORA-00909: invalid number of arguments
00909. 00000 -  "invalid number of arguments"

  1. SQLAlchemy, Psychopg2 och Postgresql COPY

  2. Stäng av en varning i sqlalchemy

  3. SQL UPPDATERING

  4. Hur man skapar och använder MySQL Views