"Regina Obe" <l...@pcorp.us> writes: > CREATE DATABASE test1 TEMPLATE=template0 ENCODING = 'UTF8' LOCALE = 'C'; > Doesn't seem to work at least not under mingw64 anyway.
Hmm, doesn't work for me either: $ LANG=en_US.utf8 initdb The files belonging to this database system will be owned by user "postgres". This user must also own the server process. Using default ICU locale "en_US". Using language tag "en-US" for ICU locale "en_US". The database cluster will be initialized with this locale configuration: provider: icu ICU locale: en-US LC_COLLATE: en_US.utf8 LC_CTYPE: en_US.utf8 LC_MESSAGES: en_US.utf8 LC_MONETARY: en_US.utf8 LC_NUMERIC: en_US.utf8 LC_TIME: en_US.utf8 ... $ psql postgres psql (16devel) Type "help" for help. postgres=# SELECT '+' < '-' ; ?column? ---------- f (1 row) (as expected, so far) postgres=# CREATE DATABASE test1 TEMPLATE=template0 ENCODING = 'UTF8' LOCALE = 'C'; CREATE DATABASE postgres=# \c test1 You are now connected to database "test1" as user "postgres". test1=# SELECT '+' < '-' ; ?column? ---------- f (1 row) (wrong!) test1=# \l List of databases Name | Owner | Encoding | Locale Provider | Collate | Ctype | ICU Locale | ICU Rules | Access privileges -----------+----------+----------+-----------------+------------+------------+------------+-----------+----------------------- postgres | postgres | UTF8 | icu | en_US.utf8 | en_US.utf8 | en-US | | template0 | postgres | UTF8 | icu | en_US.utf8 | en_US.utf8 | en-US | | =c/postgres + | | | | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | icu | en_US.utf8 | en_US.utf8 | en-US | | =c/postgres + | | | | | | | | postgres=CTc/postgres test1 | postgres | UTF8 | icu | C | C | en-US | | (4 rows) Looks like the "pick en-US even when told not to" problem exists here too. regards, tom lane