問題:
擷取儲存為BLOB 的影像在MySQL 資料庫中並在PictureBox 中顯示它們無法正常運作。
解決方案:
所提供程式碼中的問題在於從錯誤中擷取影像資料庫。以下步驟概述了從MySQL 資料庫擷取和顯示影像的方法:
資料庫設定:
在PictureBox 中顯示圖片:
在byteArrayToImage 組中,將位元組數) 轉換為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(); } } // ... }
以上是如何在 PictureBox 中顯示 MySQL 中儲存為 BLOB 的圖片?的詳細內容。更多資訊請關注PHP中文網其他相關文章!