Di Oracle Database, parameter NLS berikut dapat digunakan untuk menentukan bagaimana mata uang ditampilkan untuk sesi saat ini:
NLS_CURRENCY
menentukan string yang akan digunakan sebagai simbol mata uang lokal untukL
elemen format angka.NLS_ISO_CURRENCY
menentukan apa yang akan digunakan untukC
elemen format.NLS_DUAL_CURRENCY
menentukan apa yang akan digunakan untukU
elemen format.
Nilai default untuk ini ditentukan oleh NLS_TERRITORY
parameter.
L
, C
, dan U
elemen format angka dapat digunakan dalam fungsi seperti TO_CHAR()
untuk memformat angka sebagai mata uang.
Cara Mengembalikan Simbol Mata Uang
Anda dapat mengetahui simbol mata uang yang digunakan sesi Anda saat ini dengan menanyakan V$NLS_PARAMETERS
lihat.
Contoh:
SELECT
PARAMETER,
VALUE
FROM V$NLS_PARAMETERS
WHERE PARAMETER IN (
'NLS_TERRITORY',
'NLS_CURRENCY',
'NLS_ISO_CURRENCY',
'NLS_DUAL_CURRENCY'
);
Hasil:
PARAMETER VALUE ____________________ __________ NLS_TERRITORY GERMANY NLS_CURRENCY € NLS_ISO_CURRENCY GERMANY NLS_DUAL_CURRENCY €
Nilai default parameter ini diturunkan oleh NLS_TERRITORY
parameter. Inilah pengaturan saya saat ini untuk parameter itu:
SELECT VALUE
FROM V$NLS_PARAMETERS
WHERE PARAMETER = 'NLS_TERRITORY';
Hasil:
GERMANY
Dengan mengubah parameter tersebut, nilai parameter lain akan diperbarui ke nilai default untuk wilayah tersebut (kecuali wilayah baru menggunakan nilai yang sama dengan wilayah lama untuk parameter tertentu).
Namun, Anda juga dapat mengubah setiap parameter secara langsung, yang memungkinkan Anda memiliki simbol mata uang yang berbeda dari simbol default untuk wilayah tersebut.
Memformat Elemen dalam Tindakan
Berikut adalah contoh di mana parameter NLS di atas dapat digunakan:
ALTER SESSION SET NLS_TERRITORY = 'DENMARK';
SELECT
TO_CHAR(45, 'L99') AS "L",
TO_CHAR(45, 'C99') AS "C",
TO_CHAR(45, 'U99') AS "U"
FROM DUAL;
Hasil:
L C U ________________ _____________ ______________ kr45 DKK45 €45