MySQLデータベースに画像をバイト配列として格納するカラムがあります。MySQL 5.5 LONGBLOB列のデータが1行目のカラム 'x'に長すぎます
新しい画像を挿入するために行を更新しようとしています。新しいイメージは163Kです。バイトに変換すると、配列の要素数は167092になります。更新を行うストアドプロシージャを実行すると、エラーが発生します"データが長すぎます" x」は、行1で私はすでに変換8844バイト[]の要素を持つデータベース内の既存のイメージを持っている。
列のデータ型がLONGBLOBです。私の理解から、私はで動作するようにappox 4GBのを持っている必要があります。
私はMAX_ALLOWED_PACKETS = 16Mを作るために私のmy.iniファイルを更新しようとしていると私も100Mを試してみました。
私が保存されprocedurを実行するためにMySQLの.NETコネクタライブラリを使用していますes。
この問題を解決する方法はありますか?私は、データベースに直接画像を保存するのではなく、画像パスを保存できることを知っています。しかし、自分の現在の問題を解決する方法を知りたいのですが、私のアプローチを変えようとする前に、まずデータベースにイメージを保存しておきたいと思います。
私はMySQLワークベンチを通じて画像をアップロードすることができ、すべて正常に動作します。私は3MBのファイルをアップロードできました。これは、.NET経由でアップロードしようとしている163Kファイルよりもはるかに大きいものです。これはMySQLコネクタライブラリで問題になる可能性があると私に言います。 – johnmurphy01
私はデータベースにパスを保存することに行きました。しかし、誰かが良い答えを思い付くなら、コメントしてください。私は何か解決策を聞いてみたい。 – johnmurphy01