I see that you can only select "English, Canada" locale (and obviously
POSIX/C), which has implicitly WIN1252 encoding and you can't choose
any other variant locale from there.
However you can create new database with appropriate locale and LATIN1
encoding in such way:
CREATE DATABASE testdb
WITH OWNER = postgres
ENCODING = 'LATIN1'
LC_COLLATE = 'eng_canada.28591'
LC_CTYPE = 'eng_canada.28591'
TEMPLATE = template0;
If you want get eng_canada.28591 encoding for whole database cluster,
then you need to drop existing one and then use initdb with -locale
2011/5/3 Sébastien D'Errico <sebastien(at)hollox(dot)net>:
> Thank you Didier and Grzegorz!
> That clear some part.
> Curiosity, am I right now in the from of this windows installation of
> I know that I need LATIN1 for the project. If I check this reference sheet:
> I get:
> LATIN1 ISO 8859-1, ECMA 94 Western European Yes 1 ISO88591
> In the list from the printscreen, I do not see LATIN1, No ISO, No Western
> How can I know what I need to choose to get LATIN1?
> Do I look the wrong setting?
> -----Original Message-----
> From: Grzegorz Szpetkowski [mailto:gszpetkowski(at)gmail(dot)com]
> Sent: May-03-11 11:19 AM
> To: Didier Gasser-Morlay; sebastien(at)hollox(dot)net
> Cc: pgsql-novice(at)postgresql(dot)org
> Subject: Re: [NOVICE] create a database with encoding LATIN1
> 2011/5/3 Didier Gasser-Morlay <didiergm(at)gmail(dot)com>:
>> This is how I do it: when you setup your db cluster, chose the locale 'C'
>> this will let you select LATIN1 as a database encoding. (or as fas as I
>> understand, any other encoding)
>> If you let it at the default value, the cluster lc is defaulted to the
>> serveur local charset, in your case UTF8 - English_Canada.1252 (as would any
>> modern windows/linux server be nowadays)
>> Hope this helps
> That's good point. You can use C/POSIX locale with LATIN1 or any other
> encoding, but in such case you lost some (probably useful) text
> functionalities, which are provided by specific locale (upper, lower,
> and initcap functions bahaviour, sort order using ORDER BY etc.).
> "For C or POSIX locale, any character set is allowed, but for other
> locales there is only one character set that will work correctly. (On
> Windows, however, UTF-8 encoding can be used with any locale.)"
> "If you want the system to behave as if it had no locale support, use
> the special locale C or POSIX."
> "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."
> Grzegorz Szpetkowski
In response to
pgsql-novice by date
|Next:||From: Tom Lane||Date: 2011-05-03 18:01:04|
|Subject: Re: Exponantial Function (exp) with bigger argument ? |
|Previous:||From: Sébastien D'Errico||Date: 2011-05-03 16:33:16|
|Subject: Re: create a database with encoding LATIN1|