ホームページ >データベース >mysql チュートリアル >MySQL に BLOB として保存された画像を PictureBox に表示するにはどうすればよいですか?
問題:
BLOB として保存された画像の取得MySQL データベース内にあり、PictureBox での表示が正しく機能しません。
解決策:
提供されたコードの問題は、画像の取得が正しくないことにあります。データベース。次の手順は、MySQL データベースからイメージを取得して表示する方法の概要を示しています。
データベース セットアップ:
PictureBox に画像を表示:
byteArrayToImage メソッドで、バイト配列 (ImageByte) を Image オブジェクトに変換します:
public Image byteArrayToImage(byte[] byteArrayIn) { using (var ms = new MemoryStream(byteArrayIn)) { return Image.FromStream(ms); } }
photoLoad メソッドで、パラメータ化されたクエリを使用して画像を取得します:
private void photoLoad() { // ... using (var con = new MySqlConnection(connectionString)) { byte[] ImageByte = new byte[0]; string query1 = "select image from reg.img_table where id= @id"; using (var cmd = new MySqlCommand(query1, con)) { cmd.Parameters.AddWithValue("@id", Properties.Settings.Default.idImg); con.Open(); using (var row = cmd.ExecuteReader()) { while (row.Read()) { ImageByte = (byte[])(row["image"]); } } } if (ImageByte != null) { // Convert to an Image object and display in PictureBox roundPictureBox1.Image = byteArrayToImage(ImageByte); roundPictureBox1.Refresh(); } } // ... }
追加の考慮事項:
以上がMySQL に BLOB として保存された画像を PictureBox に表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。