public void SaveImage(string MID, OpenFileDialog openF)//将图片以二进制存入数据库中
        {
            string strimg = openF.FileName.ToString();  //记录图片的所在路径
            FileStream fs = new FileStream(strimg, FileMode.Open, FileAccess.Read); //将图片以文件流的形式进行保存
            BinaryReader br = new BinaryReader(fs);
            byte[] imgBytesIn= br.ReadBytes((int)fs.Length);  //将流读入到字节数组中
            conn.Open();
            StringBuilder strSql = new StringBuilder();
            strSql.Append("update tb_employee Set employeePhoto=@Photo where employeeID=" + MID);
            SqlCommand cmd = new SqlCommand(strSql.ToString(), conn);
            cmd.Parameters.Add("@Photo", SqlDbType.Binary).Value = imgBytesIn;
            cmd.ExecuteNonQuery();
            conn.Close();
        }
        public void Get_Image(string ygname,PictureBox pb)//将图片从数据库中取出
        {
            byte[] imagebytes = null;
            conn.Open();
            SqlCommand com = new SqlCommand("select * from tb_employee where employeeID='" + ygname + "'", conn);
            SqlDataReader dr = com.ExecuteReader();
            while (dr.Read())
            {
                imagebytes = (byte[])dr.GetValue(11);
            }
            dr.Close();
            conn.Close();
            MemoryStream ms = new MemoryStream(imagebytes);
            Bitmap bmpt = new Bitmap(ms);
            pb.Image = bmpt;
        } 
public void Read_Image(OpenFileDialog openF, PictureBox MyImage)  //显示选择的图片
        {
            openF.Filter = "*.jpg|*.jpg|*.bmp|*.bmp";   //指定OpenFileDialog控件打开的文件格式
            if (openF.ShowDialog() == DialogResult.OK)  //如果打开了图片文件
            {
                try
                {
                    MyImage.Image = System.Drawing.Image.FromFile(openF.FileName);  //将图片文件存入到PictureBox控件中
                }
                catch
                {
                    MessageBox.Show("您选择的图片不能被读取或文件类型不对!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
        }

 

改进:

  

/// <summary>         /// 从数据库中取出图片;         /// 参数:“控件”,“图片大小”,“sql相关参数”         /// </summary>         /// <param name="pbox"></param>         public void GetImage(PictureBox pbox, Size imageSize, string sql, SqlParameter[] sp, int columnIndex)         {             byte[] imageByte = null;             SqlDataReader reader = this.ExecuteReader(sql, sp);             while (reader.Read())             {                 imageByte = (byte[])reader.GetValue(columnIndex);             }             reader.Close();             MemoryStream ms = new MemoryStream(imageByte);             // Bitmap bmpt = new Bitmap(ms);                    //  pbox.Image = bmpt;//图片绑定到控件
            Bitmap bm = (Bitmap)Image.FromStream(ms);             ms.Close();
            Bitmap bp = new Bitmap(bm, imageSize);//将指定图片缩放到指定大小             pbox.Width = imageSize.Width;             pbox.Height = imageSize.Height;             pbox.Image = bp;//图片绑定到控件         }