Informix Database Configuration – Using Character Set en_us.364

character-setconfigurationinformix

I am trying to change my db_locale to en_us.364 which is an ASCII character set. It says on IBM's Knowledge Center that 364 is a valid character set:

I am able to change my DB_LOCALE=en_us.364. However, after changing the db_locale to en_us.364 I cannot access dbaccess. I get this error:

-23101 Unable to load locale categories.

So I also tried changing my client_locale to en_us.364 as well. I was able to set the environment variable. However it still gave the same error when trying to use dbaccess.

I then looked around in the GLS/lc11/en_us and could not find 016c.lco which is the character set 364/ASCII. However, I have found this character set in the GLS/lc11/pl_pl folder which means that ASCII is supported. I was wondering where I could get either the 016c.lco or the 016c.lc for the locale en_us.

Best Answer

For better or worse (and mostly worse), although some of the files necessary to support en_us.364 are present, the file needed in lc11/en_us is not present. Thus, you can have de_de.364 or es_es.364 or fr_fr.364 or pl_pl.364 but you can't have en_us.364.

You have a few options at this point.

  1. One is to try downloading the ILS — International Language Supplement. This has many extra locales in it; it might have en_us.364 (but no promises).

  2. Another is to try copying an existing locale (maybe gls/lc11/fr_fr/016c.lco or gls/lc11/de_de/016c.lco to gls/lc11/en_us/016c.lco. You'd probably want to edit the LANGUAGE and TERRITORY lines. However, be aware that the French and German locales are different; it will matter which you choose.

  3. Report a problem to IBM Informix Tech Support, requesting the file for gls/lc11/en_us/016c.lco.

I'm not sure which is best. If the relevant file is in the ILS, then that's simple. Copying a locale file is mostly straight-forward, but you need to consider what will happen if that's not available.