Использовал до этого инсталятор для Windows PostgreSQL 8.3.0. Все базы с использованием PostGis были с кодировкой Win1251.
Как теперь перебраться на 8.4.4, который по умолчанию ставит кодировку UTF8?
Соответственно все шаблоны template и установленный postgis-pg84-setup-1.5.1-1 (с базой-шаблоном) тоже в кодировке UTF8.
По идее вам cp1251 особо и не
По идее вам cp1251 особо и не нужна, ведь кодировка легко переключается на клиенте командой
SET CLIENT_ENCODING TO 'WIN1251';
Если уж вам по какой-то причине это не подходит, создавайте БД с указанием кодировки:
CREATE DATABASE имя_БД WITH ENCODING 'WIN1251';
Этот вариант не проходит,
Этот вариант не проходит, т.к. я создаю базу на основе шаблона базы template_postgis, которая созданна изначально в UTF8, а я задаю кодировку WIN1251.
Выдается следующая ошибка:
ERROR: new encoding (WIN1251) is incompatible with the encoding of the template database (UTF8)
HINT: Use the same encoding as in the template database, or use template0 as template
Вопрос в следующем: можно-ли на сам сервер установить PostgreSQL с иной (не UTF8) кодировкой при установке из программы-инсталятора под Windows? Или самому компилировать из исходников уже со своей кодировкой
Возможно всё. Надо тогда
Возможно всё. Надо тогда ручками провести повторную инициализацию кластера БД, т.е. вызвать initdb с соответствующими параметрами, включая кодировку. Однако, насколько мне известно postgis не входит в стандартный комплект PostgreSQL и таким образом шаблон к postgis вам также надо будет после initdb пересоздать вручную.
Привет всем. Есть следующий
Привет всем. Есть следующий вопрос. У меня как раз ситуация в корне противоположная.
Существует база в Debian 5 (postgresql 8.3). Понимаете сами, что тру кодировка это только utf8. Так вот, сейчас понадобилось перенести ее на WinXP. Для этого использую Денвер. Создал базу с --encode=UTF8, но вот локаль ставится там 1251 .
База развернулась, но вот данные возвращаются кракозяблами
ЗЫ. Спасибо всем, кто поможет в решении данной проблемы.
SET CLIENT_ENCODING не
SET CLIENT_ENCODING не спасает?
Благодарен, но дело было не в
Благодарен, но дело было не в бабине
Оказалось, что Денвер в настройках apache2 использует кодировку windows-1251 по умолчанию, а все скрипты написаны под utf8....
ЗЫ. Когда уже этот Windows будет юзать utf8 по дефолту?...