From: | CHEN <trainee12(at)163(dot)com> |
---|---|
To: | pgsql-odbc(at)postgresql(dot)org |
Subject: | UICODE SUPPORT IN 8.00.0102 |
Date: | 2005-08-05 03:01:50 |
Message-ID: | 42F2D69E.000039.26598@bj163app14.163.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-odbc |
server encoding : EUC_CN
client: PSQLODBC8.00.0102 +WIN98
When I select some chinese characters from sever, these characters display '?????'.
SHOW CLIENT_ENCODING ----- EUC_CN
SET CLIENT_ENCODING=UNICODE, Then characters display normal.
So I need add this setting every time when connecting.
But it don't nedd in psqlodbc8.00.0101.
I think it is a bug:
connetcion.c(download from src psqlodbc8.00.0102) line 1025:
--------------------------------------------------------
if (!self->client_encoding ||!stricmp(self->client_encoding, "UNICODE"))
{
CLIENT_ENDONG CHANGE TO UNICODE....
--------------------------------------------------------
should be(8.00.0101):
--------------------------------------------------------
if (!self->client_encoding ||stricmp(self->client_encoding, "UNICODE"))
/*WHEN CLIENT_ENCODING IS NOT UNICODE ,THEN CHANGE TO UNICODE */
{
CLIENT_ENDONG CHANGE TO UNICODE....
--------------------------------------------------------
psqlodbc8.00XX is unicode version, ODBC level is working on unicode, so ODBC must set client_encodding to unicode only when connectting, ODBC muet prevent application from setting client_encodding to other encodding, and ODBC level transfer to application level using FUNCTION "utf8-->UCS2" AND "WideCharToMultiByte"
From | Date | Subject | |
---|---|---|---|
Next Message | Lothar Behrens | 2005-08-05 04:42:21 | Re: SQLColAttribute and SQL_DESC_BASE_TABLE_NAME |
Previous Message | alexandre::aldeia digital | 2005-08-04 23:17:02 | Use Declare/Fetch in new version |