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

mysql:5335

From: "TAKAHASHI, Tomohiro" <"TAKAHASHI, Tomohiro" <t_takahashi@xxxxxxxxxx>>
Date: Wed, 10 Apr 2002 23:30:10 +0900
Subject: [mysql 05335] Re: sjis サーバの BLOB 項目に画像を登録 ( たぶん解決)

  高橋(智)です。
  下記の件ですが、Delphi6のUpdate2を施した環境ではいかがでしょうか?
  私が実験してみた限りでは問題は解決されたように思うのですが...。

-- 
高橋智宏
  Java読書会( http://www.t3-jpn.com/bof/ )
  T3-Japan( http://www.t3-jpn.com/ )

前田 剛 wrote:
> 
>  前田@ワコムアイティと申します。
>  3ヶ月ほど前からMySQLを使い始めました。どうぞよろしくお願いいた
> します。
> 
>  MySQL 3.23.47のsjisサーバのBLOB項目に画像を登録しようとしてここ
> 数日試行錯誤していましたが、libmysql.dllを修正することによりなん
> とかうまく行きました。
> 
>  過去ログではこの問題への対応方法が見つかりませんでしたので、一
> 応報告しておきます。
>  テストした範囲ではうまくいっているようですが、おかしな点があり
> ましたらご指摘下さるようお願いいたします。
> 
> 【開発環境】
> Borland Delphi 6 Professional(UpdatePack 1)のdbExpressを利用。
> 
> ※dbExpressは、MySQLに接続するためにlibmysql.dllを使用します。
> 
> 【発生していた問題】
>  sjisサーバのBLOB項目に特定のバイトパターンを含む画像を登録しよ
> うとすると、データが化けるか登録に失敗してしまう。使用していた
> libmysql.dllはsjis対応版。
> 
> 例:
> (元のパターン) 95 5C 27 →  (登録される内容) 95 5C 27 ... OK
> (元のパターン) 95 27    →  (登録される内容) 95 5C 27 ... ???
> 
> 【原因】
>  クライアント側でescape処理したものが、サーバ側ではマルチバイト
> 文字として誤認識され、結果としてunescapeされない状態でテーブルが
> 登録されてしまう(または登録に失敗する)。
> 
>  うまく説明できませんので、過去ログで[mysql 03156]から始まるスレッ
> ドの議論をご覧下さい。
> 
> http://www.mysql.gr.jp/mysqlml/msg.cgi?ml=mysql&id=3156
> 
> 【解決方法】
>  MySQL 3.23.47のソースを取得し、libmysql.cの
> mysql_sub_escape_string関数を以下のように修正してビルドした
> libmysql.dllを使用することにより解決しました。
[略]

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

      4955 2002-01-18 01:50 [前田 剛 <maeda@xxxxx] sjis サーバの BLOB 項目に画像を登録 ( たぶん解決)
      4956 2002-01-18 02:25 ┣["TAKAHASHI, Tomohiro]                                       
      4957 2002-01-18 02:48 ┃┣["TAKAHASHI, Tomohiro]                                     
      5002 2002-01-21 21:25 ┃┗[前田 剛 <maeda@xxxxx]                                     
      5003 2002-01-21 21:39 ┃ ┗["TAKAHASHI, Tomohiro]                                   
->    5335 2002-04-10 23:30 ┗["TAKAHASHI, Tomohiro]