Thread: [ADMIN] Creating a database with LC_COLLATE tr_TR.UTF-8

[ADMIN] Creating a database with LC_COLLATE tr_TR.UTF-8

From
Ertan Küçükoğlu
Date:
Hello,

I am quite new to the community and PostgreSQL. My search in the acrhieves
did not show any hints.

I just installed PostgreSQL 9.6.1 64bit on Windows 10 64bit OS. Used
EnterpriseDB setup.

I wanted to create a database using LC_COLLATE "tr_TR.UTF-8". My pgsql
command and error I receive is as follows:

postgres=# CREATE DATABASE collationtest ENCODING 'UTF-8' LC_COLLATE
'tr_TR.UTF-8' TEMPLATE template0;
ERROR:  invalid locale name: "tr_TR.UTF-8"
postgres=#

Just for a test, I tried 'tr_TR.UTF8', 'tr_TR' and got same result for all.
I am open to any advises and appreciate any help.

Thanks & regards,
Ertan Küçükoğlu







Re: [ADMIN] Creating a database with LC_COLLATE tr_TR.UTF-8

From
Tom Lane
Date:
=?iso-8859-9?B?RXJ0YW4gS/zn/Gtv8Gx1?= <ertan.kucukoglu@1nar.com.tr> writes:
> I just installed PostgreSQL 9.6.1 64bit on Windows 10 64bit OS.

On Windows you'd have to use Windows' locale names.  My first guess
would've been that those are completely unlike anybody else's, but
some googling suggests that "tr-TR" (dash not underscore) will work:

https://msdn.microsoft.com/en-us/library/windows/desktop/dd373814(v=vs.85).aspx

But the easy answer is to look into the pg_collation system catalog
and see what names are installed.

            regards, tom lane


Re: [ADMIN] Creating a database with LC_COLLATE tr_TR.UTF-8

From
Samed YILDIRIM
Date:
Hi Ertan,
 
Locale names are different on Windows and Linux. Please try using following command to create new database.
CREATE DATABASE collationtest ENCODING 'UTF8' LC_COLLATE 'Turkish_Turkey.1254' LC_CTYPE = 'Turkish_Turkey.1254' TEMPLATE template0;
 
Note on document:
On Windows, however, UTF-8 encoding can be used with any locale.
 
Best regards.
Samed YILDIRIM
 
30.12.2016, 16:26, "Ertan Küçükoğlu" <ertan.kucukoglu@1nar.com.tr>:

Hello,

I am quite new to the community and PostgreSQL. My search in the acrhieves
did not show any hints.

I just installed PostgreSQL 9.6.1 64bit on Windows 10 64bit OS. Used
EnterpriseDB setup.

I wanted to create a database using LC_COLLATE "tr_TR.UTF-8". My pgsql
command and error I receive is as follows:

postgres=# CREATE DATABASE collationtest ENCODING 'UTF-8' LC_COLLATE
'tr_TR.UTF-8' TEMPLATE template0;
ERROR: invalid locale name: "tr_TR.UTF-8"
postgres=#

Just for a test, I tried 'tr_TR.UTF8', 'tr_TR' and got same result for all.
I am open to any advises and appreciate any help.

Thanks & regards,
Ertan Küçükoğlu






 --
Sent via pgsql-admin mailing list (pgsql-admin@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-admin

Re: [ADMIN] Creating a database with LC_COLLATE tr_TR.UTF-8

From
Ertan Küçükoğlu
Date:
Dear Tom,

Your suggestion worked just fine. Thanks.



-----Original Message-----
From: pgsql-admin-owner@postgresql.org
[mailto:pgsql-admin-owner@postgresql.org] On Behalf Of Tom Lane
Sent: Friday, December 30, 2016 5:53 PM
To: Ertan Küçükoğlu <ertan.kucukoglu@1nar.com.tr>
Cc: pgsql-admin@postgresql.org
Subject: Re: [ADMIN] Creating a database with LC_COLLATE tr_TR.UTF-8

=?iso-8859-9?B?RXJ0YW4gS/zn/Gtv8Gx1?= <ertan.kucukoglu@1nar.com.tr> writes:
> I just installed PostgreSQL 9.6.1 64bit on Windows 10 64bit OS.

On Windows you'd have to use Windows' locale names.  My first guess would've
been that those are completely unlike anybody else's, but some googling
suggests that "tr-TR" (dash not underscore) will work:

https://msdn.microsoft.com/en-us/library/windows/desktop/dd373814(v=vs.85).a
spx

But the easy answer is to look into the pg_collation system catalog and see
what names are installed.

            regards, tom lane


--
Sent via pgsql-admin mailing list (pgsql-admin@postgresql.org) To make
changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-admin



Re: [ADMIN] Creating a database with LC_COLLATE tr_TR.UTF-8

From
Ertan Küçükoğlu
Date:
Hello Samed,

After testing, I see that your sugestion also works.

Thank you.


From: pgsql-admin-owner@postgresql.org [mailto:pgsql-admin-owner@postgresql.org] On Behalf Of Samed YILDIRIM
Sent: Friday, December 30, 2016 6:01 PM
To: Ertan Küçükoğlu <ertan.kucukoglu@1nar.com.tr>; pgsql-admin@postgresql.org
Subject: Re: [ADMIN] Creating a database with LC_COLLATE tr_TR.UTF-8

Hi Ertan,

Locale names are different on Windows and Linux. Please try using following command to create new database.
CREATE DATABASE collationtest ENCODING 'UTF8' LC_COLLATE 'Turkish_Turkey.1254' LC_CTYPE = 'Turkish_Turkey.1254'
TEMPLATEtemplate0; 

Note on document:
On Windows, however, UTF-8 encoding can be used with any locale.
Ref: https://www.postgresql.org/docs/9.6/static/multibyte.html

Best regards.
Samed YILDIRIM

30.12.2016, 16:26, "Ertan Küçükoğlu" <mailto:ertan.kucukoglu@1nar.com.tr>:
Hello,

I am quite new to the community and PostgreSQL. My search in the acrhieves
did not show any hints.

I just installed PostgreSQL 9.6.1 64bit on Windows 10 64bit OS. Used
EnterpriseDB setup.

I wanted to create a database using LC_COLLATE "tr_TR.UTF-8". My pgsql
command and error I receive is as follows:

postgres=# CREATE DATABASE collationtest ENCODING 'UTF-8' LC_COLLATE
'tr_TR.UTF-8' TEMPLATE template0;
ERROR: invalid locale name: "tr_TR.UTF-8"
postgres=#

Just for a test, I tried 'tr_TR.UTF8', 'tr_TR' and got same result for all.
I am open to any advises and appreciate any help.

Thanks & regards,
Ertan Küçükoğlu







--
Sent via pgsql-admin mailing list (mailto:pgsql-admin@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-admin