If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

 
Go Back  dBforums > Database Server Software > Informix > Error -21005 - Database LOCALE

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old 09-14-04, 15:52
alexhbs alexhbs is offline
Registered User
 
Join Date: Sep 2004
Posts: 2
Error -21005 - Database LOCALE

Hey there folks,

I'm running a Informix 7.31 database server on windows 2000.
This database has the single purpose of holding all of our ERP data (built by a brazilian company) and is accessed only by this application that handles data interaction via ODBC, clients don't access the DB directly. They have access to an application server that talks to the database layer application that talks to informix. (hope i made myself clear there.. ).

My problem seems to be due to diferent locales on the database and on the data that is entered into it. The DB uses en_US.819 (which i believe is informix' default) and the clients enter data that has iso-8859-1 characters, brazilian ones.
Here's the error i get in ODBC:
Error=21005[Informix][Informix ODBC Driver]Unspecified System Error = -21005.
and then the row doesn't get updated.
i coudn't find anything related to that error anywhere, but i'm pretty sure that's the problem.

my question is. Is there anyway to change the database locale without having to export all the data, dropping the database, recreating the database with a different charset (which i'm not entirely sure how to do) and then re-importing the data back?

the server in question (HP Proliant 370, 2x 3,06 GHz HT, 4GB RAM, ~60GB RAID 5) takes about 2 hours to export the data (~ 6 GB) and around 3,5 hours to import it back using dbexport and dbimport (is it too slow?).

Any help is greatly appreciated as i've just started managing this database a couple of weeks ago and am still getting the hang of it.

Thank you!
Reply With Quote
  #2 (permalink)  
Old 09-16-04, 08:47
gurey gurey is offline
Registered User
 
Join Date: Aug 2003
Location: Argentina
Posts: 780
Hi,

Please check the environment variables CLIENT_LOCALE and DB_LOCALE, next
look in systables (select * from systables where tabid = 91)

Gustavo.
Reply With Quote
  #3 (permalink)  
Old 09-16-04, 10:25
Big Kahuna Big Kahuna is offline
Registered User
 
Join Date: Jan 2003
Posts: 30
Client_locale Db_locale

Hi,

In setnet32 on the client side ( In fact your databaselayer application) set the CLIENT_LOCALE to iso-8859-1 and the DB_LOCALE to en_US.819 .

Restart your application.

This should do the codeset conversion for you

Best regards
Koen
Reply With Quote
  #4 (permalink)  
Old 09-28-04, 07:55
alexhbs alexhbs is offline
Registered User
 
Join Date: Sep 2004
Posts: 2
Exclamation

Sorry to take so long to post a reply.

I was able to fix my ODBC problem by upgrading to the latest IBM driver available for download on their website. The latest version of their iConnect product.

So it happens, that yesterday, out of the blue, the problem started happening again. Only this time, nothing could fix it.

I had to call on a consulting company to fix the problem, which they did, by reinstalling informix, and an OLDER version of the connect libraries. ODBC driver version 3.31.

We now have a running system, and if the problem happens again, we know just how to fix it. Export the data, reinstall everything, and import the data back in.

Dandy, just freaking dandy...

Thanks for all your help!
Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On