Storing Chinese characters with WE8ISO8859P1 character set?
766913Aug 7 2012 — edited Aug 9 2012Hi all,
I have a customer which is having problems with fetching and displaying Chinese characters in the client application which is running on a Citrix server. Instead of "蹕庌煉蛁扞撙1g 1" the "ÂÞÊÏ·Ò×¢Éä¼Á1g 1" is returned. Microsoft Oracle Data Provider is used (.NET 2.0) for fetching data.
I am trying to reproduce the issue on my machine but I am not successful. The problem is that I cannot store the Chinese characters into my db. The data type of the column is VARCHAR2(240), same as in the customer's db.
I set up the following environment:
I am running Oracle 9.2.0.8 on Windows Server 2003, my client machine is Windows XP. The regional settings on WinXP is set to Chinese (PRC).
HKLM\SOFTWARE\ORACLE\HOME0 registry key value = AMERICAN_AMERICA.WE8MSWIN1252
select * from nls_database_parameters
NLS_NCHAR_CHARACTERSET AL16UTF16
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_CHARACTERSET WE8ISO8859P1
All these settings are the same as the customer's settings.
Now if i try to store "蹕庌煉蛁扞撙1g 1" to the db, only "¿¿¿¿¿¿1g1" is stored. Running select dump(column_name), column_name from table_name; returns Typ=1 Len=9: 191,191,191,191,191,191,49,103,49. So only the last three characters are actually correctly inserted. So how can I store Chinese characters into field with WE8ISO8859P1 charset? How could the customer store the Chinese characters???
And I must not forget to mention - the old application written in VB6 and using RDO connection which fetches the same data displays the Chinese characters OK.
Any hep would be appreciated. If I need to provide any other information let me know. Thank you!
Edited by: Vklop on Aug 6, 2012 11:37 PM