ugrás a tartalomhoz

PostgreSQL magyar collate?

coder · 2004. Feb. 25. (Sze), 19.38
Sziasztok!
PostgreSQL 7.4.1-et használok debian linux alatt, és kb. 3-4 óra szerencsétlenkedés után sem tudtam elérni hogy magyar ÁBC szerint rendezzen.

Pl. egy ilyen kérésre: SELECT nevek FROM db ORDER BY nevek ASC;
össze-vissza keverednek az ékezetes betűk. Pl. az "ő" az "m" előtt van, és hasonló vicces dolgok.

Az adatbázist az "initdb --locale hu_HU --lc_collate hu_HU -E unicode" paranccsal inicializáltam.

Mi lehet a gond?
 
1

Re: PostgreSQL magyar collate?

bbalint · 2004. Feb. 28. (Szo), 18.02
hi!

rendesen van az a magyar locale telepítve?


  setlocale(LC_ALL, 'hu_HU');
  print(strtoupper('árvíztűrő tükörfúrógép'));
 

^nagybetűkkel kellne kiírnija, hogy "ÁRVÍZTŰRŐ TÜKÖRFÚRÓGÉP"

még, - ami nem tudom mit jelent - hogy az indításnál megadsz egy "-E unicode" opciót:
(IMHO) lehet, hogy unicode (UTF-8?) kódolás szerint értelmezi az adatokat, míg azok ISO-8859-2 -ként vannak az adatbázisban.

bbalint

ui: nem szeretem PgSQL-t meg nem is értek hozá. na
2

Re: PostgreSQL magyar collate?

coder · 2004. Már. 2. (K), 14.48
Sajnos nincs PHP azon a serveren, amin a postgres van, ezért nem tudom kipróáblni a scriptet amit írtál :(
Viszont én is arra gyanakszom, hogy valami a két kódolás (UTF-8 és ISO-8859-2) közt van, tehát lehet hogy a magyar locale, a rendezés az utóbbi kódolással működik csak rendesen? Mindjárt kipróbálom mit művel ha nem unicode-dal inicializálom, hanem latin2-vel...
Pedig én az adatbázisban is UTF-8-at (ezért kellett a -E unicode opció az initdb-nél) használok, és kliens oldalon is.

Egyébként én sem vagyok PgSQL rajongó, pont azért szerettem volna átállni MySQL-ről, hogy unicode-ot használhassak és pár egyéb feature miatt....
3

inkabb a pg_controldata /ahol

zedorg · 2005. Jan. 27. (Cs), 02.47
inkabb a pg_controldata /ahol/a/pg/data/dir/van utasitast futtasd le, es nezd meg az aljan mit ir a LC_COLLATE: resz. hu_HU kellene ott legyen, vagy hu_HU.UTF-8 ha azt akarod inkabb megadni. Kerdes a locale mennyire mukodik a gepen, mivel az alapfeltetele:) peldaul console-ba tudsz-e hu_HU-t allitani. Illetve tobbnyire locale.gen file-ba latod mi van legeneralva.