Re: pgsqlodbc utf8 windows?

From: Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>
To: yufeng230(at)sina(dot)com
Cc: pgsql-odbc <pgsql-odbc(at)postgresql(dot)org>
Subject: Re: pgsqlodbc utf8 windows?
Date: 2010-08-24 02:09:09
Message-ID: 4C7329C5.4060503@postnewspapers.com.au
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

On 08/21/2010 11:09 AM, yufeng230(at)sina(dot)com wrote:
> hi:
>
> In windows,I set postgresql _encoding utf8_ with chinese text inside.
> _, when I use psqlodbc-08.04.0200 psqlodbc35w.dll to _connect postgresql
> ,but no OK ,read text encoding with UCS2,how to solve it ?

UCS2 and utf8 are both unicode encodings. The text should be the same,
just encoded differently. The ODBC driver is converting the UTF-8 it
gets from PostgreSQL into UCS-2, because that's the standard encoding
used by Windows and by the Windows Unicode ODBC driver.

If for some reason you really need UTF-8, you should use the standard
Windows encoding conversion functions, or use libiconv, to convert from
the UCS-2 data you get from the ODBC driver back to UTF-8.

Another option is to install the non-unicode ODBC driver for PostgreSQL,
which will pass whatever the database sends through to do you directly.
That way you should get UTF-8.

--
Craig Ringer

In response to

Browse pgsql-odbc by date

  From Date Subject
Next Message Werner Kuhnle 2010-09-03 09:00:45 Problem with simple SELECT over ODBC
Previous Message yufeng230 2010-08-21 03:09:10 pgsqlodbc utf8 windows?