Slovenski jezik, uncode in postgresql
Gregor GORJANC
gregor.gorjanc at bfro.uni-lj.si
Fri Aug 13 15:31:53 CEST 2004
Zdravo!
V postgresql sem si želel urediti vnos in prikaz ter razvrščanje s podoporo
za šumnike. Želim unicode. Imam debian unstable in postgresql 7.4.3-3.
Pri namestitvi sem za backend encoding vzel sl_SI.utf-8 (probal tudi z
sl_SI). Nato pa za character encoding Unicode.
Celoten locale imam nastavljen na sl_SI.utf8
S spodnjim ukazom lahko pogledam kako se obnaša backend:
root at pc303:/var/lib/postgres# pg_controldata /var/lib/postgres/data/
pg_control version number: 72
Catalog version number: 200310211
Database cluster state: shut down
pg_control last modified: Fri Aug 13 15:19:16 2004
Current log file ID: 0
Next log file segment: 1
Latest checkpoint location: 0/9B1058
Prior checkpoint location: 0/9AA680
Latest checkpoint's REDO location: 0/9B1058
Latest checkpoint's UNDO location: 0/0
Latest checkpoint's StartUpID: 12
Latest checkpoint's NextXID: 536
Latest checkpoint's NextOID: 17142
Time of latest checkpoint: Fri Aug 13 15:19:16 2004
Database block size: 8192
Blocks per segment of large relation: 131072
Maximum length of identifiers: 64
Maximum number of function arguments: 32
Date/time type storage: 64-bit integers
Maximum length of locale name: 128
LC_COLLATE: sl_SI.utf-8
LC_CTYPE: sl_SI.utf-8
--> OK tole bi moglo delati
Če skreiram novo bazo s spodnjim ukazom, mi naredi kodno tabelo zanjo v
LATIN2 in ne UNICODE
createdb ggorjan
ggorjan=# \l
Seznam podatkovnih baz
Ime | Lastnik | Kodna tabela
-----------+----------+--------------
ggorjan | ggorjan | LATIN2
template0 | postgres | LATIN2
template1 | postgres | LATIN2
(3 vrstic)
Če nujno zahtevam unicode, moram uporabiti spodnje, kar še niti ni takšen
problem.
createdb --encoding unicode ggorjan
Seznam podatkovnih baz
Ime | Lastnik | Kodna tabela
-----------+----------+--------------
ggorjan | ggorjan | UNICODE
template0 | postgres | LATIN2
template1 | postgres | LATIN2
(3 vrstic)
Ampak v bazi mi pa ne razvršča pravilno glede na znake v naši abecedi.
Ko še enkrat preverim backend, vidim, da se je locale za LC_COLLATE
in LC_CTYPE spremenil v C.
root at pc303:/var/lib/postgres# pg_controldata /var/lib/postgres/data/
pg_control version number: 72
Catalog version number: 200310211
Database cluster state: in production
pg_control last modified: Fri Aug 13 15:22:00 2004
Current log file ID: 0
Next log file segment: 1
Latest checkpoint location: 0/B62F14
Prior checkpoint location: 0/B3F61C
Latest checkpoint's REDO location: 0/B62F14
Latest checkpoint's UNDO location: 0/0
Latest checkpoint's StartUpID: 47
Latest checkpoint's NextXID: 61234
Latest checkpoint's NextOID: 25530
Time of latest checkpoint: Fri Aug 13 15:21:58 2004
Database block size: 8192
Blocks per segment of large relation: 131072
Maximum length of identifiers: 64
Maximum number of function arguments: 32
Date/time type storage: 64-bit integers
Maximum length of locale name: 128
LC_COLLATE: C
LC_CTYPE: C
Ima kdo kakšne izkušne s tem? Ali komu drugače zadeva deluje? Kako je pa
kaj z latin2?
--
Lep pozdrav / With regards,
Gregor GORJANC
More information about the lugos-slo
mailing list