- ベストアンサー
日本語入力について
PostgreSQL for Windows という本を読みながらポストグレスをインストールしました。 しかし、psqlでコマンドで操作しようとした際に、日本語入力ができませんでした。 入力切替方法が分かっていないだけかもしれませんが、半角/全角ボタン、カタカナひらながローマ字ボタンでも駄目でした。 インストール時にクラスタの初期化段階でエンコーディングをEUC_JPにしています。 ただ、 http://www.ne.jp/asahi/hishidama/home/tech/postgres/install.html のサイトで調べて、「日本語を使いたい場合は、/usr/local/pgsql/binにpg_encodingが出来ていることを確認する。」とありましたが、自分の設定を見ると、 C:\Program Files\PostgreSQL\8.0\binのフォルダにpg-encodeingはありませんでした。 pgsqlの実行ファイルはこのフォルダにあります。 おそらく初歩的な状態なのでしょうが、どなたか助けていただければ幸いです。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
> エンコーディングをEUC_JPにしています。 psqlはコマンドプロンプトから動かしているんでしょうが、WindowsのコマンドプロンプトはEUCを扱えません。 扱えるのはシフトJISです。(WindowsXPならUTF8も可) なのでPostgreSQLの方に既にEUCで日本語が入っているとしてSELECTするとコマンドプロンプト上には文字化けして表示されます。 > 入力切替方法が分かっていないだけかもしれませんが、半角/全角ボタン、カタカナひらながローマ字ボタンでも駄目でした。 ちなみにコマンドプロンプト(Windows上での)での日本語入力のONは「Alt」+「半角/全角」です。 まあこれでIMEをONにしたとしてINSERTで日本語を入れても、コマンドプロンプトはシフトJISで送るわけでPostgreSQLの方はEUCだと思ってそれを受け付けますので結局は文字化けします。 文字化けしないようにするには、クライアントの文字コードを指定してPostgreSQL側にそれに合わせて相互変換してもらいましょう。 SET NAMESを使って以下のように。 SET NAMES 'SJIS'; http://www.postgresql.jp/document/pg810doc/html/sql-set.html
その他の回答 (2)
- ririli
- ベストアンサー率32% (15/46)
お使いのバージョンは、質問文を見る限り8以降のようですが、 そうだとすると、まだ日本語には対応していなかったと思います。
お礼
早速の回答ありがとうございます。 ただ、本には当たり前のように感じなども使われていていたので何か方法はありますでしょうか? 別にメモ帳でタイプしてから毎回コピーペーストでもかまいません。 ただ、右クリックは反応せず、Ctrl+Vをしても^Vとなってしまいます。
- kai-au
- ベストアンサー率20% (1/5)
質問者のkfdです。 補足のため別アカウントから書き込んでいます。 今の段階で、テーブルの作成、データの登録、検索はできています。 登録データが全てアルファベットであれば問題なさそうなのですが、登録データに日本語を使いたいのでよろしくお願いします。
お礼
ありがとうございます。 まさにこの回答を待っていました。 おかげさまで課題が終わりそうです=4年生になれそうです(^^; 本当にありがとうございました。