I have DB2 v184.108.40.2069 on Windows. I inherited a MFC non-Unicode multilingual application that connects to UTF-8 database (codeset UTF-8, territory SI, Slovenia). Strings that are sent through ODBC are UTF-8 strings (non-orthodox approach, but at this time I can't turn my application to Unicode).
In DB2 Control Center I see strings as "raw", garbled if characters are outside ASCII range. This is because the string is converted between my app and database (probably by ODBC driver) from system code page to UTF-8.
Is there a way to prevent this conversion? I would like to have nice strings in database, and to be able to accurately verify lengths before I send strings to database.
I'm not versed to DB2, but I suspect there might be some setting on ODBC part, or DB2 part, with which this can easily be accomplished. All I want is to make DB2 realize it already gets UTF-8 string, no need to convert them.
I have set the DB2CODEPAGE environment variable to 1208 (System Properties > Advanced > Environment Variables), and restarted my applications, but nothing has changed, the strings are still garbled. One remark: even though the CODESET is set to UTF-8 in the database, the CODEPAGE value is empty.