MySQLで質問です

LONGBLOB型のフィールドに825KB分のbase64エンコードした、バイナリデータを入れたのですが
どうしてか上手くいきません。

容量が小さいときは上手くいくのですが、何故でしょうか??

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2011/05/07 16:30:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答3件)

id:Galapagos No.1

回答回数963ベストアンサー獲得回数89

ポイント27pt

MySQLのバージョンやテーブル構成が分からないのですが、MySQL バージョン 3.23 までとMyISAMの場合は、1レコードあたり16Mバイトの制約があります。これを超えていないかどうかご確認下さい。

id:tomomon-a No.2

回答回数2ベストアンサー獲得回数1

ポイント27pt

容量が小さいと入るのでしたら

Max_allowed_packetの値が825K以下だから入らないのではないですかね

id:saijyoh_739 No.3

回答回数113ベストアンサー獲得回数10

ポイント26pt

http://dev.mysql.com/doc/refman/4.1/ja/column-types.html

上記で読めるリファレンスマニュアルに『バージョン 4.x 以降、LONGTEXT 型または LONGBLOB 型のカラムで許容される最大長は、クライアント/サーバプロトコル間の通信バッファおよび使用可能なメモリ量にしたがって調整された最大パケットサイズによって決まる。』と書かれてます。

http://dev.mysql.com/doc/refman/4.1/ja/blob.html

上記ページには『メッセージバッファのサイズ(max_allowed_packet)は変更できるが、サーバ側とクライアント側の両方で変更を行う必要がある』と書かれていますので変更したつもりでも片方しか変えてなければ変更できてない事になりそうですね。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません