[pgsql-jp: 36516] ignoring unconvertible UTF-8 character 0xe28094

サンタ santasan @ mahorobakan.jp
2005年 12月 9日 (金) 23:34:27 JST


お世話になります。三田と申します。

受信したメールをJDBCを通じでPostgreSQLのデータベースに格納するアプリケーションをVine2.6r4およびVine3.2で作成しています。使用しているPostgreSQLは7.3.11または7.4.9でソースからのインストールです。

MLに流れるさまざまなメールをデータベースに入れていますが、時々postmasterを起動したコンソールウィンドウ上に

$ WARNING: ignoring unconvertible UTF-8 character 0xe28094  (7.4.9の場合)

WARNING: UtfToLocal: could not convert UTF-8 (0xe28094). Ignored  (7.3.11の場合)

と表示されます。0xe28094のコードは別のコードの時もあります。0xe28094の場合はWindows上のOutlook Expressでは横棒(−)で表示されているものですが、Windows上から入力し 
た横棒はデータベースにはすんなり入りWARNINGも表示されません。同じ横棒でもコードは違うようです。要はいろんなシステムで作成されたメールが流れてくるので、中にはPostgreSQLでコード変換できないものもあるようです。この場合、そのコードはデータベースに入らないで削除されてしまいます。

postgresql.confのclient_encodingはディフォルトのsql_asciiでもUTF-8にしても同様です。Vine3.2もしくは2.6r4の$LANGはともにja_JP.eucJPです。

これはもうあきらめるか、クライアント側でコードを拾って別のコードに変換してからデータベースに入れるしか手はないのでしょうか。





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