23197 : Database locale information mismatch

Asked By 210 points N/A Posted on -

Good day,

Let me put this issue in this way: I have 4 databases on my Informix server 11.5 say A, B, C, D. I can connect to B, C and D which are the default Informix databases and A is created by the DBA.

The information about A:

1- This database is created from an earlier existing database on an older version

2- Not sure what was the platform on which the Informix was running, from which this database has been imported

3- The newer version of Informix runs on Windows Server 2003

Now when I try to connect to the database, it gives me 23197: Database locale information mismatch.

One more thing my Informix database is on Windows Server 2003 which I remotely access using my PC. Any help would be really appreciated.

Thanks in advance.

Answered By 5 points N/A #84943

23197 : Database locale information mismatch


You can usually fix this by doing either of the following:

1) Specify Informix server option INFORMIX_DB_LOCALE.
2) Add Informix environment variable DB_LOCALE to your InfoSphere Federation Server db2dj.ini file. (Remember that if you update db2dj.ini, then you need to stop and restart DB2 for the changes to take effect.)
In either case, you set DB_LOCALE to the locale specified in the system catalog of the Informix database that you are connecting to. You can determine the locale specified in the Informix catalog with the following Informix query. (This is Informix SQL so if you issue this query from the federated server, you will need to issue the SQL in passthru mode.)
SELECT tabname, site FROM informix.systables WHERE tabname like ' GL_%'
Setting DB_LOCALE tells Informix to perform code page conversion between the Informix database code page and the Informix client code page. (When you use InfoSphere Federation Server to access Informix, the Informix client code page is usually the same as the DB2®database code page.)
If you do not set Informix environment variable DB_LOCALE, then it defaults to the setting of Informix environment variable CLIENT_LOCALE. If you do not set CLIENT_LOCALE, the wrapper sets it to the Informix locale that most closely matches the code set and territory of your DB2 database. For example, if your DB2 database uses code page 819, territory US, the wrapper will set CLIENT_LOCALE=en_us.8859-1. You can determine your DB2 database codepage and territory by issuing the DB2 command "get db cfg for db2_db_name".



Login/Register to Answer

Related Questions