Thread: We have to support ANSI encoding...

We have to support ANSI encoding...

From
Johann Zuschlag
Date:
Hi Dave,

I hope, that we can keep two drivers for the future. In fact we have to.
Just note the excerpt of the PostgreSQL docs below:


20.1.2. Behavior

Locale support influences the following features:

    * Sort order in queries using ORDER BY
    * The ability to use indexes with LIKE clauses
    * The |to_char| family of functions

The drawback of using locales other than C or POSIX in PostgreSQL is its
performance impact. It slows character handling and prevents ordinary
indexes from being used by LIKE. For this reason use locales only if you
actually need them.



So because of performance reasons we don't want to use UTF-8 always. The
conclusion is that we must support both drivers.

Regards
Johann



Re: We have to support ANSI encoding...

From
"Dave Page"
Date:

> -----Original Message-----
> From: Johann Zuschlag [mailto:zuschlag2@online.de]
> Sent: 20 September 2005 15:08
> To: Dave Page
> Cc: pgsql-odbc@postgresql.org
> Subject: We have to support ANSI encoding...
>
> Hi Dave,
>
> I hope, that we can keep two drivers for the future. In fact
> we have to.
> Just note the excerpt of the PostgreSQL docs below:
>
>
> 20.1.2. Behavior
>
> Locale support influences the following features:
>
>     * Sort order in queries using ORDER BY
>     * The ability to use indexes with LIKE clauses
>     * The |to_char| family of functions
>
> The drawback of using locales other than C or POSIX in
> PostgreSQL is its
> performance impact. It slows character handling and prevents ordinary
> indexes from being used by LIKE. For this reason use locales
> only if you
> actually need them.
>
>
>
> So because of performance reasons we don't want to use UTF-8
> always. The
> conclusion is that we must support both drivers.

Yeah, I'm pretty much resigned to that now - in fact, the only
alternative I can see is to convert incoming strings from the local
charset to ucs-2 in the *W functions of the Unicode driver - that seems
to be what the SQL Server driver does (it's configurable behaviour in
fact). Of course, that would reduce performance even further :-(

/D