sql >> Databáze >  >> RDS >> Oracle

Funkce NLS_COLLATION_ID() v Oracle

V databázi Oracle NLS_COLLATION_ID() funkce vrací ID daného kolace. Při volání funkce předáte název řazení a vrátí ID řazení.

Syntaxe

Syntaxe vypadá takto:

NLS_COLLATION_ID(expr)

Kde expr je název řazení typu VARCHAR2 .

Příklad

Zde je základní příklad:

SELECT NLS_COLLATION_ID('XAZERBAIJANI')
FROM DUAL;

Výsledek:

70

Zde je několik dalších příkladů:

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;

Výsledek:

        1         2       3       4 
_________ _________ _______ _______ 
   208920    208917    4116    4112

Neplatné řazení

Předání neplatného názvu řazení má za následek null :

SET NULL 'null';
SELECT NLS_COLLATION_ID('Oops!')
FROM DUAL;

Výsledek:

null

Ve výchozím nastavení vrátí SQLcl a SQL*Plus prázdné místo vždy, když null dochází v důsledku SQL SELECT prohlášení.

Můžete však použít SET NULL určit jiný řetězec, který má být vrácen. Zde jsem uvedl, že řetězec null by měl být vrácen.

Nulový argument

Předávání null vrátí null :

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

Výsledek:

null

Nesprávný počet argumentů

Volání funkce bez předání jakýchkoli argumentů má za následek chybu:

SELECT NLS_COLLATION_ID()
FROM DUAL;

Výsledek:

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:

A předání příliš mnoha argumentů také vede k chybě:

SELECT NLS_COLLATION_ID('JAPANESE_M', 'THAI_M')
FROM DUAL;

Výsledek:

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:

  1. Nejprve mapujte složené klíče pomocí kódu EF

  2. Jak převést řádky na sloupce v Oracle?

  3. Jak analyzovat aktivitu jedné databáze na serveru SQL

  4. Oznámení obecné dostupnosti SQL Secure 4.0