Problem to store german characters with 'umlaut' (ä, ö, etc) in an Oracle 11g database

Author: ncolmart@medinfo.fr (ncolmart)

Our configuration is the following : - Uniface 9.4.01 (r110) - Oracle 11g R2 - We use the database as a non unicode database. Therefore, we set $WIDE_CHAR_BEHAVIOR option to 'Charset'. Thus VW* fields are mapped to VARCHAR2 in Oracle - Database parameters are the following NLS_LANGUAGE : Database=AMERICAN, Instance=AMERICAN, Session=GERMAN NLS_TERRITORY: Database=AMERICA, Instance=AMERICA, Session=SWITZERLAND NLS_SORT: Database=BINARY, Session=GERMAN NLS_DATE_LANGUAGE: Database=AMERICAN, Session=GERMAN NLS_CALENDAR: Database=GREGORIAN, Session=GREGORIAN NLS_COMP: Database=BINARY, Instance=BINARY, Session=BINARY NLS_LENGTH_SEMANTICS: Database=BYTE, Instance=BYTE, Session=BYTE NLS_NCHAR_CONV_EXCP: Database=FALSE, Instance=FALSE, Session=FALSE NLS_NCHAR_CHARACTERSET: Database=AL16UTF16 NLS_RDBMS_VERSION: Database=11.2.0.1.0 NLS_CHARACTERSET: Database=WE8MSWIN1252 - The font used is Arial, Western (ex : EditFont=Arial,Western,8,regular) - In the .ini file, NLS option is set to USA - The OS is Windows Server 2008 R2 installed with German language With such a configuration, we are unable to store characters as 'ä, ö, ü' with Uniface. When retrieving the data from the database, we have '?' instead If we insert these characters by Sql, when retrieving the data from the database with Uniface, we see the character without the umlaut ('ä' mapped to 'a') We have other installations where it works well, but with different languages Example in French : - OS installed in French - Oracle parameter : NLS_LANGUAGE : Database=AMERICAN, Instance=FRENCH, Session=FRENCH Example in Spanish : - OS installed in English - Oracle parameter : NLS_LANGUAGE : Database=SPANISH, Instance=SPANISH, Session=SPANISH This is the only installation we have in German. Do someone experiment the same problem ? Is the problem due to Oracle settings ? Thanks for your help

1 Comment

  1. For information, we solved this by adding the NLS_LANG Environment Variable (See http://docs.oracle.com/cd/B28359_01/server.111/b28298/ch3globenv.htm#sthref118)


    Author: ncolmart (ncolmart@medinfo.fr)