將圖片以二進位形式存入資料庫時,首先要在資料庫中建立一張表,將儲存圖片的欄位類型設為Image類型,用FileStream類、BinaryReader把圖片讀成位元組的形式,賦給一個位元組數組,然後用ADO.SqlCommand對象的ExecuteNonQuery()方法來把資料儲存到資料庫中。主要代碼如下:
private void button1_Clickobject sender, EventArgs e)</p><p> {</p><p> openFileDialog1.Filter = "*jpg|*.JPG|*.GIF|*.GIF|*.BMP|*.BMP";</p><p> if(openFileDialog1.ShowDialog()==DialogResult.OK)</p><p> {</p><p> string fullpath =openFileDialog1.FileName;//檔案路徑</p><p> FileStream fs = new FileStream(fullpath, FileMode.Open);</p><p> byte[] imagebytes =new byte[fs.Length];</p><p> BinaryReader br = new BinaryReader(fs);</p><p> imagebytes = br.ReadBytes(Convert.ToInt32(fs.Length));</p><p> //資料庫連接<br /> SqlConnection con = new SqlConnection("server=(local);uid=sa;pwd=;database=db_05");</p><p> con.Open();</p><p> SqlCommand com = new SqlCommand("insert into tb_08 values(@ImageList)",con);</p><p> com.Parameters.Add("ImageList", SqlDbType.Image);</p><p> com.Parameters["ImageList"].Value = imagebytes;</p><p> com.ExecuteNonQuery();</p><p> con.Close();</p><p> } </p><p>}</p><p> ——摘自《C#編程詞典》