Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PostgreSQL] sortowanie
Forum PHP.pl > Forum > Bazy danych > PostgreSQL
lunter
--- usunieto przez autora ---
MStaniszczak
Z tego co mi wiadomo to nie da rady tak tego rozwiązać w PostreSQL-u... Jedyny sposób to:
- PostgreSQL musi być zbudowany z opcja --enable-locale (nie wiem jak maja Postgresy z rpm-ow bo zawsze stawiam ze źródeł)
- przed wywołaniem inidb trzeba ustawić odpowiednie locale w systemie (bash, w np. csh [np. na w systemach z rodziny BSD] odpowiedni zmodyfikowac;-) ):

Kod
export LC_COLLATE=pl_PL
export LC_CTYPE=pl_PL
export LC_MESSAGES=pl_PL
export LC_MONETARY=pl_PL
export LC_NUMERIC=pl_PL
export LC_TIME=pl_PL

(locale musi być ustawione nie tylko podczas initdb ale zawsze podczas uruchamiania PostgreSQL-a - po uruchomieniu chyba można zmienić na inne, ale nie sprawdzałem, u siebie mam zawsze na pl_PL)
- teraz initdb
- i dopiero teraz założenie wszystkich baz...

Standardowo w Linuxie loacle na pl_PL ustala kodowanie na LATIN2 (ISO-8859-2).

I na koniec uwaga - jeśli chcesz teraz zrobić bakup baz z PostgreSQL-a, zainicjować Postgres-a jeszcze raz po ustawieniu locale i odtworzyć bazy to niestety zrobi się kaszana tym którzy już maja bazy i w nich polskie krzaczki (z polskich zrobią się krzaki - zmiana kodowania;-)

Pozdrawiam
Marcin Staniszczak
Jabol
wsparcie dla innych "lokali" czyli innych kodowań oraz języków.
MStaniszczak
Nie dam sobie głowy uciąć, ale prawdopodobnie w Windowsach PotrgeSQL bierze pod uwagę ustawienia regionu (nie wiem jak to jest nazwane w polskich windowsach, w angielskich Regional Options)

Pozdrawiam
Marcin Staniszczak
who?
Witam,
Pod XP, COLLATE i kodowanie (chyba) możesz ustawić przy instalacji postgres'a. Z tego co się orientuje nie można tego zmienić po instalacji (przynajmniej mnie się nie udało).

POZDRAWIAM
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.