[前][次][番号順一覧][スレッド一覧]

mysql:818

From: 民斗 <民斗 <tommy@xxxxxxxxxx>>
Date: Tue, 20 Apr 1999 01:15:03 +0900
Subject: [mysql 00818] Re: Shift JIS での文字化け

民斗です。

[Subject: [mysql 00816] Re: Shift JIS での文字化け]
[Date: 20 Apr 1999 00:58:10 +0900  From:"ONDA, Takashi"]

> これは MySQL から直接テキストに次のように落としても
> 起こるのですが…
> 
> % echo "select * from TABLENAME" | mysql DB_NAME > text.txt
> 
> このテキストファイルを見ても同じように化けています。

MySQL に格納されているデータが既に化けてしまっている可能性が
ありますね。

> これも 「ソ」 が \ を含むからでしょうか。
> また、他にも \ を含む文字があるんでしょうか。

「噂」「圭」「構」「十」「申」「表」とか…。

> この問題の原因は、2バイト文字の中には \ が含まれる
> ものがあって、\ は MySQL ではエスケープ文字なので
> たとえば 「ソルバ」 の場合は 「ル」の1バイト目が
> エスケープされてしまい、そこから1バイトずつずれてしまう
> から、ということですよね。

“「ル」の1バイト目がエスケープされる”というよりも、
“「ソ」の2バイト目が特殊文字とみなされて、結果的に無くなって
しまう”という方がいいかもしれません。

> もし MySQL のデータをテキストファイルに落としたいときには、
> \ の処理をしなければならないんですね。

どっちかというと、MySQL にデータを格納する時に気をつけた方が
いいと思います。

あと、MySQL サーバを make 時に SJIS 用に make しておけば、
サーバ側の処理ではこのような問題は起きません。

--
民斗 <tommy@xxxxxxxxxx>

[前][次][番号順一覧][スレッド一覧]

       816 1999-04-20 00:58 ["ONDA, Takashi" <tak] Re: Shift JIS での文字化け              
->     818 1999-04-20 01:15 ┣[民斗 <tommy@xxxxxxxx]                                       
       819 1999-04-20 01:16 ┗[舘山  <tateyan@xxxxx]                                       
       822 1999-04-21 22:44  ┗[km <maykeart@xxxxxxx] WWW サイトで利用した場合のライセンス
       826 1999-04-22 09:55   ┗[民斗 <tommy@xxxxxxxx]