sql >> Databasteknik >  >> RDS >> Oracle

NLS_CHARSET_NAME() Funktion i Oracle

I Oracle Database, NLS_CHARSET_NAME() funktion returnerar teckenuppsättningens namn för en given teckenuppsättning, baserat på dess ID. Du skickar teckenuppsättnings-ID som ett argument, och funktionen returnerar sitt namn.

Syntax

Syntaxen ser ut så här:

NLS_CHARSET_NAME(number)

Där number är det teckenuppsättnings-ID för vilket du vill returnera namnet.

Exempel

Här är ett grundläggande exempel:

SELECT NLS_CHARSET_NAME(1)
FROM DUAL;

Resultat:

US7ASCII

Här är den med ett annat teckenuppsättnings-ID:

SELECT NLS_CHARSET_NAME(871)
FROM DUAL;

Resultat:

UTF8

Nollargument

Om argumentet är null , resultatet är null :

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

Resultat:

null

Som standard returnerar SQLcl och SQL*Plus ett tomt utrymme när null uppstår som ett resultat av en SQL SELECT påstående.

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 teckenuppsättnings-ID

Att skicka ett ogiltigt teckenuppsättnings-ID resulterar i null :

SET NULL 'null';
SELECT NLS_CHARSET_NAME(19999)
FROM DUAL;

Resultat:

null

Men om du skickar fel datatyp returneras ett fel:

SELECT NLS_CHARSET_NAME('oops')
FROM DUAL;

Resultat:

Error starting at line : 1 in command -
SELECT NLS_CHARSET_NAME('oops')
FROM DUAL
Error report -
ORA-01722: invalid number

Inkorrekt antal argument

Att anropa funktionen utan att skicka några argument resulterar i ett fel:

SELECT NLS_CHARSET_NAME()
FROM DUAL;

Resultat:

Error starting at line : 1 in command -
SELECT NLS_CHARSET_NAME()
FROM DUAL
Error at Command Line : 1 Column : 8
Error report -
SQL Error: ORA-00938: not enough arguments for function
00938. 00000 -  "not enough arguments for function"
*Cause:    
*Action:

Men att skicka flera teckenuppsättnings-ID:n resulterar i att namnet på den första returneras:

SELECT NLS_CHARSET_NAME(871, 1)
FROM DUAL;

Resultat:

UTF8

  1. Ställa in sessionens tidszon med spring jdbc oracle

  2. Sök efter "helordsmatchning" med SQL Server LIKE-mönster

  3. Kontrollera om en tabell har en TIMESTAMP-kolumn i SQL Server med OBJECTPROPERTY()

  4. Oracle som lösning på muterande tabeller