ロケール・日本語設定

ロケールの確認

 SHOW lc_collate;
 SELECT name, setting, context FROM pg_settings WHERE name LIKE 'lc%';

ロケール無し=ロケールC

「initdb locale=C」と「initdb --no-locale」は同じ意味。

ロケールを設定するタイミング

initdbもしくはcreatedbする時。createdbで指定できるのはPostgreSQL8.4以降。

エンコーディングの確認

 \encoding
 UTF8

UTF8でinitdbして、EUCJPでcreatedbする

initdbする

 initdb --locale=C --encoding=UTF8

createdbする

 createdb --encoding=EUC_JP --locale=ja_JP.EUC_JP --template=template0 mydb01

localeとencodingのエンコーディングは揃える。

psqlで接続

 LC_ALL=ja_JP.eucjp psql mydb01

ターミナルのエンコーディングはEUCにしておく。

psqlで日本語入力が利かない(エコーバックされない)

readlineを切ってみる。

 psql -n mydb01

参考

ロケール(国際化と地域化)
http://lets.postgresql.jp/documents/technical/text-processing/2

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS