Ответ 1
Как документация, 22.2. Поддержка набора символов говорит:
Важное ограничение, однако, что каждый набор символов базы данных должны быть совместимы с базой данных LC_CTYPE (классификация символов) и LC_COLLATE (порядок сортировки строк) языковые настройки. Для C или POSIX locale, любой набор символов разрешен, но для других мест есть только один набор символов, который будет работать правильно. (В Windows, однако, UTF-8 кодировка может использоваться с любой локалью.)
Я вижу, что, возможно, у вас есть PostgreSQL под хостом Windows (English_United States.1252 locale
), поэтому вы можете использовать что-либо из них (Posix
совпадает с C
и означает "no locale" ), читайте 22.1. Поддержка локалей:
Поддержка локалей относится к применение в отношении культурных предпочтения в отношении алфавитов, сортировка, форматирование чисел и т.д.
Если вы хотите, чтобы система вела себя так, как будто у него не было поддержки языкового стандарта, используйте специальный язык C или POSIX.
EDIT:
Платформа Windows не совместима с POSIX, поэтому для этой платформы следует использовать C
locale. Я не знаю, почему у установщика есть опция POSIX (я предполагаю, что это скорее ошибка):
Чтобы создать новый кластер без локали, вы можете просто использовать переключатель --no-locale
, например:
initdb --no-locale -E UTF-8 C:\pgdata