Re: ANSI and Unicode driver

From: Dave Page <dpage(at)vale-housing(dot)co(dot)uk>
To: Peter Eisentraut <peter_e(at)gmx(dot)net>
Cc: <pgsql-odbc(at)postgresql(dot)org>
Subject: Re: ANSI and Unicode driver
Date: 2006-02-20 20:08:41
Message-ID: C01FD249.639F%dpage@vale-housing.co.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

On 20/2/06 18:18, "Peter Eisentraut" <peter_e(at)gmx(dot)net> wrote:

> Dave Page wrote:
>> The Unicode driver adds a bunch of unicode-specific APIs. Our ANSI
>> driver can handle Unicode data as multibyte strings as well, but
>> without the Unicode APIs that many non-multibyte aware versions of
>> Windows require (if that makes sense!).
>
> Well, the information available to me seems to indicate that Unicode
> drivers will handle ANSI applications just fine, and of course our
> Unicode driver will also handle any server encoding,

Yes,that's quite correct.

> so the question is
> why the ANSI version needs to exist.

Well, for 8.0 we did release only 1 driver for that reason, but we kept
getting odd reports that it didn't handle non-ASCII characters (with umlauts
or accents etc) properly in some situations, that others, including myself
could never reproduce.

After lots of on-list discussion in the latter part of last year during
which I made it clear on a number of occasions that we needed help from
someone who understood encodings better than I, we eventually concluded that
the best solution was to reinstate the old ansi driver, as it appeared to my
limited understanding that whilst basic ASCII characters mapped directly
into the lower bytes of the Unicode function function parameters, we needed
some conversion code to cope with other characters (which the SQL Server
driver appears to have as a configurable options for example).

Reinstating the ANSI only driver fixed things instantly for all those that
were complaining BTW, though I did note an email from Hiroshi Inoue earlier
today implying that it's actually the 'wise' DM that handles the conversion
(although the complainants were all on Windows iirc). FWIW, the
07_03_ENHANCED branch does only build the Unicode driver, though I'm not yet
sure if it will suffer the same problems that 08.00 did.

Feel free to explain what exactly is wrong if you know :-)

Regards, Dave.

In response to

Responses

Browse pgsql-odbc by date

  From Date Subject
Next Message Dave Page 2006-02-20 20:43:42 Re: Building the psqlODBC enhanced branch (Linux)
Previous Message Peter Eisentraut 2006-02-20 18:18:06 Re: ANSI and Unicode driver