NLS_CHARACTERSET is used for CHAR, VARCHAR2, CLOB columns and NLS_NCHAR_CHARACTERSET is used for NCHAR, NVARCHAR2, NCLOB columns. One can find the value of NLS_NCHAR_CHARACTERSET used by the database by running the following SQL: select value from NLS_DATABASE_PARAMETERS where parameter=’NLS_NCHAR_CHARACTERSET’; VALUE ———————- AL16UTF16 The possible values for NLS_NCHAR_CHARACTERSET can be UTF8 or AL16UTF16. Continue reading What is the difference b/w NLS_NCHAR_CHARACTERSET and NLS_NCHAR_CHARACTERSET?
One can use the following v$nls_parameters view to find the database LANGUAGE, TERRITORY and CHARACTER SET. select DECODE(parameter, 'NLS_CHARACTERSET', 'CHARACTER SET', 'NLS_LANGUAGE', 'LANGUAGE', 'NLS_TERRITORY', 'TERRITORY') name, value from v$nls_parameters WHERE parameter IN ( 'NLS_CHARACTERSET', 'NLS_LANGUAGE', 'NLS_TERRITORY') / NAME VALUE ————- —————– LANGUAGE AMERICAN TERRITORY AMERICA CHARACTER SET WE8ISO8859P1 export NLS_LANG=<language>_<territory>.<character set> Continue reading How to find the NLS_LANG to set for a database?
Last updated: 17-Nov-2008 When exporting/importing one can minimize risk of losing data during import/export by setting NLS_LANG. – Before starting export set NLS_LANG to be the same character set of the database being exported which means no conversion takes place, all the data will be stored in the export file as it was stored in the database. – Before starting import set NLS_LANG to be … Continue reading Setting NLS_LANG for export/import
NLS_LANG=<language>_<territory>.<character set> Example: export NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1 Setting NLS_LANG tells Oracle what characterset the client is using so Oracle can do conversion if needed from client’s characterset to the database characterset and setting this parameter on the client does not change the client’s characterset. Setting Language and Territory in NLS_LANG has nothing to do with storing characters in database, it’s controlled by the characterset and of course … Continue reading Setting NLS_LANG for Oracle
For SQL*Plus to process french accents characters when using SQL*Plus, you would need to set NLS_LANG On Windows set NLS_LANG=.AL32UTF8 set NLS_LANG=.UTF8 On Unix (ksh) export NLS_LANG=.AL32UTF8 set NLS_LANG=.UTF8 Now when you start SQLPlus from Unix or Windows it will keep the accents on the french characters. Continue reading French accents character when using SQL*Plus