Re: Œœ on IBM AIX

From: Addison Phillips (
Date: Wed May 09 2007 - 14:06:17 CDT

  • Next message: Michael Everson: "Re: Uppercase is coming? (U+1E9E)"

    One of the locales Ankit lists is:


    Any of the 8859-15 locales should be able to display the character, but
    that is only part of the problem.

    It is important to ensure that the character in question can survive the
    whole round trip to and from the database. The terminal display locale
    is only a small part of this.

    First, check the encoding used by the Oracle database:


    Look for NLS_CHARACTERSET in the results. And then look at the
    connection character encoding used by the client (usually part of the
    NLS_LANG environment variable, such as "AMERICAN_AMERICA.WE8ISO8859P15").

    These all need to be compatible. For example, if your database uses the
    encoding AL32UTF8 (that is, UTF-8), then the database can store the
    characters you want---encoded as UTF-8. If your connection encoding is
    WE8ISO8859P15 (that is, ISO 8859-15), then you will get bytes consistent
    with that encoding in your queries---the database converts them to/from
    UTF-8 for storage using the specified encoding. It is very likely that
    your connection encoding is set to ISO 8859-1, though, and this is
    possible source of your woes (otherwise, instead of inverted question
    mark, you'd see random garbage bytes until you set your locale to use

    Oracle does conversions to match the client character set. If you choose
    "WE8ISO8859P1" as the encoding, the oe liguature character will be
    converted to the substitution character, regardless of the locale you
    set. So be sure you set all of your settings (locale, NLS_LANG, database
    encoding) to match or at least support the characters you need.

    Note that there is no requirement to use a French or France-specific
    locale to do this. Those locales are necessary only if you want French
    behavior such as date formats, number formats, sorting, and so forth.
    For character display all you need is the correct character encoding.

    Best Regards,



    For further reading, check out the Oracle Globalization Guide,
    especially Chapter 3:

    You might also find this configuration guide to be of some small use:

    Addison Phillips
    Globalization Architect -- Yahoo! Inc.
    Internationalization is an architecture.
    It is not a feature.
    Philippe Verdy wrote:
    > I see that you are trying to store exactly the list of non ASCII letters 
    > needed for writing French, but your system does not list support for any 
    > French locale, only English US and default POSIX…
    > Second: œ and Œ are not in any of the encodings supported in the lists 
    > of locales.
    > Yes they are not in ISO 8859-1 (only in ISO 8859-15 which made a 
    > fewchanges for the Euro, and for French) but in Windows-1252 (the 
    > Windows “ANSI” codepage for Western European Latin).
    > May be this will work if you install the locales for French…
    > ------------------------------------------------------------------------
    > *De :* [] 
    > *De la part de* Ankit Jain
    > *Envoyé :* mercredi 9 mai 2007 15:06
    > *À :*
    > *Objet :* Œœ on IBM AIX
    > Hi All
    > I am using IBM AIX version 5.1, oracle 9.2 client and Oracle 10g server.
    > I am passing the following characters: Àà Ââ Ææ Çç Éé Èè Êê Ëë Îî Ïï Œœ 
    > Ôô Ùù Ûû Üü Ÿ ÿ. these characters get stored in the database, but when i 
    > retrieve them, "Œœ " becomes inverted question mark...
    > I checked the locales of the IBM AIX and found the following:
    > C
    > POSIX
    > (..)
    > en_US
    > (….)
    > en_US@alt.lftkeymap <mailto:en_US@alt.lftkeymap>
    > One can see that there is not UTF-8 locale here.
    > I suppose that "Œœ" character can be viewed using UTF-8 encoding.
    > if that supposition is right, then how to install UTF-8 locale here or 
    > if i am wrong, how to retrieve them

    This archive was generated by hypermail 2.1.5 : Wed May 09 2007 - 14:07:57 CDT