Specifying column level collations

From: Thomas Kellerer <spam_eater(at)gmx(dot)net>
To: pgsql-sql(at)postgresql(dot)org
Subject: Specifying column level collations
Date: 2011-05-07 11:19:10
Message-ID: iq39rc$8sl$1@dough.gmane.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Hi,

I'm playing around with 9.1beta1 and would like to create a table where one column has a non-default collation.

But whatever I try, I can't find the correct name that I have to use.

My database is initialized as follows:

postgres=# select version();
version
----------------------------------------------------------------
PostgreSQL 9.1beta1, compiled by Visual C++ build 1500, 32-bit
(1 row)

postgres=# select name, setting
postgres-# from pg_settings
postgres-# where name in ('lc_collate', 'server_encoding', 'client_encoding');
name | setting
-----------------+---------------------
client_encoding | WIN1252
lc_collate | German_Germany.1252
server_encoding | UTF8
(3 rows)

Now I'm trying to create a table where one column's collation is set to french:

create table foo (bar text collate "fr_FR") --> collation "fr_FR" for encoding "UTF8" does not exist
create table foo (bar text collate "fr_FR.1252") --> collation "fr_FR" for encoding "UTF8" does not exist
create table foo (bar text collate "fr_FR.UTF8") --> collation "fr_FR" for encoding "UTF8" does not exist
create table foo (bar text collate "French_France.1252") --> collation "French_France.1252" for encoding "UTF8" does not exist

So, how do I specify the collation there?

And is there a command to show me all available collations that I can use?

Thanks
Thomas

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Guillaume Lelarge 2011-05-07 12:02:41 Re: Specifying column level collations
Previous Message Tarlika Elisabeth Schmitz 2011-05-07 09:39:44 Re: data import via COPY, Rules + Triggers