- PR -

MacのTerminal上でDB内の日本語が読めない

1
投稿者投稿内容
未記入
ベテラン
会議室デビュー日: 2005/04/16
投稿数: 51
投稿日時: 2005-07-19 14:24
■ 環境

OS :Macintosh OS X Server Ver.10.4
DB :PostgreSQL 8.0.1
JDBCドライバ:Postgresql-8.0-311.jdbc3
JavaIDE :eclipse-SDK-3.0.2


DBMSはPostgreSQLを利用しています。
DBのキャラクターセットは「EUC_JP」です。

Javaプログラムや\copyコマンドを利用してデータを登録します。
 
登録したデータは、
Javaプログラムや、\g、\copyといったDBコマンドを利用して
テキストファイルにExportすると
日本語も含めて問題なく内容が確認できます。

しかし、MacのTerminal上からSELECTした結果を見ようとすると
日本語部分が奇妙に文字化けして読めません。
次のような感じになります。

<BC><AB><C6><B0><BC><D6> ・・・・・・

Terminalの「文字コードエンコーディング」を
EUC_JPをはじめ他の何に変えても、結果は変わりません。


一方、Windows2000(SP4)では
DB :PostgreSQL 8.0.1
JDBCドライバ:pg74.215.jdbc3.jar
を利用しておりDBのエンコーディングは同様にEUC_JPですが、
Windowsのコマンドプロンプトでは、日本語であろうとなかろうと
DBに登録されたすべての値が正常に表示されます。


MacのTerminalからも日本語が正しく読み取れるようにしたいのですが、
この問題の根源が何なのかもわかっていません。

どうすればよいか、お教えいただけませんでしょうか?
宜しくお願い申し上げます。

ちいにぃ
大ベテラン
会議室デビュー日: 2002/05/28
投稿数: 244
投稿日時: 2005-07-23 02:22
PostgreSQLのクライアント側の文字セットを設定するとどうでしょう?

psql ( http://www.postgresql.jp/document/current/html/app-psql.html )より:
引用:
¥encoding [ encoding ]
クライアント側の文字セット符号化方式を設定します。引数無しの場合、このコマンドは現在の符号化方式を表示します。



文字セットサポート ( http://www.postgresql.jp/document/current/html/multibyte.html ) に
符号化方式の一覧があります。


これでうまくいくようでしたら、次のように設定ファイルに¥encodingを指定してやればよいでしょう。

psql ( http://www.postgresql.jp/document/current/html/app-psql.html )より:
引用:
psqlは処理を始める前に、システム全体用のpsqlrcファイルとユーザ用の~/.psqlrcファイル内のコマンドを読み込み、実行しようと試みます。 (Windowsでは、ユーザ用の起動ファイルの名前は%APPDATA%\\\\postgresql\\\\psqlrc.confです。)


1

スキルアップ/キャリアアップ(JOB@IT)