This content has been marked as final. Show 4 replies
Oracle strong recommendation is not to cheat and not to use NAVRCHAR2. It is to create a database in AL32UTF8 and use it to store both Arabic and Hebrew and any other language you want.
If you have a default configuration of the second database, then the NVARCHAR2 character set is AL16UTF16. It is different from IW8ISO8859P8, so the character codes change when transferred from VARCHAR2 to NVARCHAR2. As the codes are not stored correctly in VARCHAR2, the conversion yields incorrect AL16UTF16 codes and your second application, which is most probably correctly configured, cannot makes sense of this data. A trick that you can employ is to use the packages UTL_RAW and UTL_I18N to convert your data to RAW and then to NVARCHAR2. By specifying that data in RAW is in its real Arabic character set (you have to identify this character set first), you can ensure that the conversion to AL16UTF16 happens from the correct source character set.
Saying the above, I still advise you to clean up this mess and make sure that the Arabic data is stored in Unicode AL32UTF8 (or at least a correct Arabic character set) and not in a Hebrew character set. Otherwise, you will have to keep cheating and finding workarounds each time you have to add some new stuff to your system.
My System Param
1 NLS_CSMIG_SCHEMA_VERSION 5
2 NLS_LANGUAGE AMERICAN
3 NLS_TERRITORY AMERICA
4 NLS_CURRENCY $
5 NLS_ISO_CURRENCY AMERICA
6 NLS_NUMERIC_CHARACTERS .,
7 NLS_CHARACTERSET WE8MSWIN1252
8 NLS_CALENDAR GREGORIAN
9 NLS_DATE_FORMAT DD-MON-RR
10 NLS_DATE_LANGUAGE AMERICAN
11 NLS_SORT BINARY
12 NLS_TIME_FORMAT HH.MI.SSXFF AM
13 NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
14 NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
15 NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
16 NLS_DUAL_CURRENCY $
17 NLS_COMP BINARY
18 NLS_LENGTH_SEMANTICS BYTE
19 NLS_NCHAR_CONV_EXCP FALSE
20 NLS_NCHAR_CHARACTERSET AL16UTF16
21 NLS_RDBMS_VERSION 18.104.22.168.0
22 NLS_DMU_USAGE 20121217172118,20121217140509,WE8MSWIN12
Character Set is NLS_NCHAR_CHARACTERSET AL16UTF16
but still i couldn't save Arabic Characters in database..
Used Unistr also
update mst_code_language set display_value = unistr('ثقققثفغ')
still my database column value is ??????. please let me know any possible ways to store arabic characters