Set LC_COLLATE to de_DE_phoneb - Mailing list pgsql-hackers

From Frank Jagusch
Subject Set LC_COLLATE to de_DE_phoneb
Date
Msg-id 1270584769.6242.31.camel@AMD3800.zuhause
Whole thread Raw
Responses Re: Set LC_COLLATE to de_DE_phoneb
List pgsql-hackers
How to set the collation of a database to the german phone book sort
order?
I did ask this on several places. Finally the moderator of pg-forum.de
recommended to ask here. See the discussion there:
http://www.pg-forum.de/konfiguration/4308-sortierfolge-de_de_phoneb.html

Environment: PostgreSQL 8.4.3 build 1400, 32 Bit, Windows XP

The usual german collation is "German_Germany.1252". This corresponds to
the windows language setting de_DE an in the registry (HKEY_CURRENT_USER
\control\Panel\International\Locale) to the value 00000407.

The german phone book order has the windows language setting
de_DE_phoneb an the value 00010407 in the registry. Unfortunately I was
not able to find a corresponding string for the LC_COLLATE setting.

I searched the sources of postgresql an found the function
IsoLocaleName(...) in src/backend/utils/adt/pg_locale.c. I guess this
should be the place for further investigations. Or am I wrong? I'm not
quite well in C and without some knowledge of the libraries behind I
make no progress. Can anyone help me out? Is there anywhere a
documentation or a "translation table" for the different representations
of the language settings between the postgresql- and the
windows-"world"? 

Background: I moved an old application from a borland paradox database
to postgesql. The speed gain is great but the sorting order isn't the
usual to the user. I can't change the order by clauses of the select
statements because they are generated by the borland database engine.

Thanks in advance
Frank Jagusch
-- 
http://www.jagusch-online.de/cdlfj



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: pg_filedump strangeness
Next
From: Magnus Hagander
Date:
Subject: Re: Win32 timezone matching