In Oracle Database, de NLS_COLLATION_ID()
functie retourneert de ID van een bepaalde sortering. U geeft de sorteernaam door wanneer u de functie aanroept, en het retourneert de sorteer-ID.
Syntaxis
De syntaxis gaat als volgt:
NLS_COLLATION_ID(expr)
Waar expr
is de sorteernaam, van het type VARCHAR2
.
Voorbeeld
Hier is een eenvoudig voorbeeld:
SELECT NLS_COLLATION_ID('XAZERBAIJANI')
FROM DUAL;
Resultaat:
70
Hier zijn nog enkele voorbeelden:
SELECT
NLS_COLLATION_ID('UCA0620_THAI') AS "1",
NLS_COLLATION_ID('UCA0620_TSPANISH') AS "2",
NLS_COLLATION_ID('CANADIAN_M') AS "3",
NLS_COLLATION_ID('FRENCH_M') AS "4"
FROM DUAL;
Resultaat:
1 2 3 4 _________ _________ _______ _______ 208920 208917 4116 4112
Ongeldige sortering
Het doorgeven van een ongeldige sorteernaam resulteert in null
:
SET NULL 'null';
SELECT NLS_COLLATION_ID('Oops!')
FROM DUAL;
Resultaat:
null
Standaard retourneren SQLcl en SQL*Plus een spatie wanneer null
treedt op als resultaat van een SQL SELECT
uitspraak.
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.
Nullargument
Doorgeven van null
retourneert null
:
SET NULL 'null';
SELECT NLS_COLLATION_ID(null)
FROM DUAL;
Resultaat:
null
Onjuist aantal argumenten
Het aanroepen van de functie zonder het doorgeven van argumenten resulteert in een fout:
SELECT NLS_COLLATION_ID()
FROM DUAL;
Resultaat:
Error starting at line : 1 in command - SELECT NLS_COLLATION_ID() FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action:
En het doorgeven van te veel argumenten resulteert ook in een fout:
SELECT NLS_COLLATION_ID('JAPANESE_M', 'THAI_M')
FROM DUAL;
Resultaat:
Error starting at line : 1 in command - SELECT NLS_COLLATION_ID('JAPANESE_M', 'THAI_M') FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action: