Di Oracle Database, NLS_COLLATION_ID()
fungsi mengembalikan ID dari susunan yang diberikan. Anda meneruskan nama pemeriksaan saat memanggil fungsi, dan mengembalikan ID pemeriksaan.
Sintaks
Sintaksnya seperti ini:
NLS_COLLATION_ID(expr)
Dimana expr
adalah nama pemeriksaan, dengan tipe VARCHAR2
.
Contoh
Berikut ini contoh dasarnya:
SELECT NLS_COLLATION_ID('XAZERBAIJANI')
FROM DUAL;
Hasil:
70
Berikut beberapa contoh lainnya:
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;
Hasil:
1 2 3 4 _________ _________ _______ _______ 208920 208917 4116 4112
Pengumpulan Tidak Valid
Melewati nama pemeriksaan yang tidak valid menghasilkan null
:
SET NULL 'null';
SELECT NLS_COLLATION_ID('Oops!')
FROM DUAL;
Hasil:
null
Secara default, SQLcl dan SQL*Plus mengembalikan ruang kosong setiap kali null
terjadi sebagai akibat dari SQL SELECT
penyataan.
Namun, Anda dapat menggunakan SET NULL
untuk menentukan string berbeda yang akan dikembalikan. Di sini saya menetapkan bahwa string null
harus dikembalikan.
Argumen Null
Melewati null
mengembalikan null
:
SET NULL 'null';
SELECT NLS_COLLATION_ID(null)
FROM DUAL;
Hasil:
null
Jumlah Argumen Salah
Memanggil fungsi tanpa meneruskan argumen apa pun menghasilkan kesalahan:
SELECT NLS_COLLATION_ID()
FROM DUAL;
Hasil:
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:
Dan meneruskan terlalu banyak argumen juga menghasilkan kesalahan:
SELECT NLS_COLLATION_ID('JAPANESE_M', 'THAI_M')
FROM DUAL;
Hasil:
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: