>> Few details...
>> I create connection and before all the bindings of parameters and columns, and before SQLPrepare I do
SQLExecDirect(stmthp,"setclient_encoding to \"WIN866\";",SQL_NTS);
>> Then after SQLPrepare, SQLBindParameter and after SQLExecute I get an error:
>> Error code 22P05 with message ERROR: character 0x83 of encoding "WIN1251" has no equivalent in "MULE_INTERNAL";
>>
>> In this example, the function I pass the 'select * from "Table"'
>What will happen when you don't call *set client_encoding to ...*?
Yes, I understood and found a bug in my code. And now schema by using "set client_encoding to \"WIN866\";" worked
correctly.Thanks.
But while I was searching for a solution, I found the documentation and tried it through a variable PGCLIENTENCODING
changethe encoding.
http://www.postgresql.org/docs/8.1/static/multibyte.html
---
Using PGCLIENTENCODING. If the environment variable PGCLIENTENCODING is defined in the client's environment, that
clientencoding is automatically selected when a connection to the server is made. (This can subsequently be overridden
usingany of the other methods mentioned above.)
Using the configuration variable client_encoding. If the client_encoding variable is set, that client encoding is
automaticallyselected when a connection to the server is made. (This can subsequently be overridden using any of the
othermethods mentioned above.)
---
I set environment variable at 'WIN866', as well set the database properties "ALTER DATABASE "DD866" SET
client_encoding='WIN866'".But it did not work. And without *set client_encoding to ...* don't work.
This mechanism would be more optimal for my project, because now, for each cursor must run the command *set
client_encodingto ...*. Or is this another question?