Di Oracle, NLS_CHARSET_ID()
fungsi mengembalikan nomor ID set karakter dari set karakter yang diberikan. Anda meneruskan nama kumpulan karakter sebagai argumen, dan itu mengembalikan ID-nya.
Sintaks
Sintaksnya seperti ini:
NLS_CHARSET_ID(string)
Dimana string
adalah nama set karakter yang ingin Anda kembalikan IDnya.
Contoh
Berikut ini contoh dasarnya:
SELECT NLS_CHARSET_ID('AL16UTF16')
FROM DUAL;
Hasil:
2000
Ini dia dengan set karakter yang berbeda:
SELECT NLS_CHARSET_ID('UTF8')
FROM DUAL;
Hasil:
871
Argumen Null
Jika argumennya null
, hasilnya null
:
SET NULL 'null';
SELECT NLS_CHARSET_ID(null)
FROM DUAL;
Hasil:
NLS_CHARSET_ID(NULL) _______________________ 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.
Nama Kumpulan Karakter Tidak Valid
Melewati nama kumpulan karakter yang tidak valid menghasilkan null
:
SET NULL 'null';
SELECT NLS_CHARSET_ID('oops')
FROM DUAL;
Hasil:
NLS_CHARSET_ID('OOPS') _________________________ null
Jumlah Argumen Salah
Memanggil fungsi tanpa meneruskan argumen apa pun menghasilkan kesalahan:
SELECT NLS_CHARSET_ID()
FROM DUAL;
Hasil:
Error starting at line : 1 in command - SELECT NLS_CHARSET_ID() 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:
Namun, meneruskan beberapa nama kumpulan karakter menghasilkan ID yang pertama dikembalikan:
SELECT NLS_CHARSET_ID('UTF8', 'AL16UTF16')
FROM DUAL;
Hasil:
871