[pgsql-jp: 27029] Re: Javaプログラムから UNIX コマンド実行できるか

rio-t @ presen.to rio-t @ presen.to
2002年 8月 14日 (水) 13:43:16 JST


こんにちは、高石です。

Java方面のMLで質問した方が的確な回答が得られそうな気はします
が、とりあえずPostgreSQLに関係しそうな部分にだけ反応。

From: "daisuke sone" <daisuke_iip @ hotmail.com>
Subject: [pgsql-jp: 27023] Re: Javaプログラムから UNIX コマンド実行できるか

> 〓データベースから検索をかけるため、JavaBeansを使用して、select文を生成後、
> 実行します。
> 〓select文で受け取ったデータを構造体を作り、String型で保持します。
> 〓String型で保存した時点で、データはUNICODEに自動的に変換されます。
>  その際にサーブレットエンジンは、受け取ったデータをSJISであると判断し、
>  SJIS→UNICODEに変換しようとします。
> 〓受け取ったデータはEUCのため、文字化けしてしまいます。

そこまで原因がわかっているなら、EUCでなくSJISでデータを受け
取るようにすればよいでしょう。

selectする前に、set client_encoding='SJIS'; とSQLを発行して
エンコーディングを指定してやれば、selectした時にSJISで返って
くるようになります。

# あくまでもPostgreSQLとしての解決策なので、実際のところは、
# おそらくJava側での文字コードの扱いについて調べて対処した方
# がいいとは思います。
/--------------------------------------------------------/
  高石 勇人 < rio-t @ presen.to >
  PGP Key(RSA): http://rio-t.presen.to/pgp/mykey.asc
         (DSS): http://rio-t.presen.to/pgp/mykey-dss.asc
/--------------------------------------------------------/



pgsql-jp メーリングリストの案内