数据库存取图片

   private void button1_Click(object sender, EventArgs e) //窗体打开文件图片
        {
            openFileDialog1.Filter = "@.jpg|*.jpg|all files|*.*";
            DialogResult dr = openFileDialog1.ShowDialog();
            if (dr == DialogResult.OK)
            {
                FileStream fs = new FileStream(openFileDialog1.FileName,FileMode.Open,FileAccess.Read);
                Image img = System.Drawing.Bitmap.FromStream(fs);
                pictureBox1.Image = img;

            }
        }
       
        private void button2_Click(object sender, EventArgs e)  //图片存入数据库
        {
            openFileDialog1.Filter = "@.jpg|*.jpg|@.gif|*.gif|All files|*.*";
            DialogResult dr = openFileDialog1.ShowDialog();
            if (dr == DialogResult.OK)
            {
                FileStream fs = new FileStream(openFileDialog1.FileName,FileMode.Open,FileAccess.Read);
                BinaryReader br = new BinaryReader(fs);
                byte[] buffer = br.ReadBytes(int.Parse(fs.Length.ToString()));
                SqlConnection conn = new SqlConnection("server=.;database=HQ0325;user=sa;pwd=123");
                SqlCommand cmd = conn.CreateCommand();
                cmd.CommandText = "insert into imgtable values(@buffer)";
                cmd.Parameters.Add("@buffer",buffer);
                conn.Open();
                cmd.ExecuteNonQuery();
                cmd.Dispose();
                conn.Close();
                MessageBox.Show("保存成功");
            }
        }

        private void button3_Click(object sender, EventArgs e)  //从数据库里获取图片并且在窗体里显示第一张
        {
            SqlConnection conn = new SqlConnection("server=.;database=HQ0325;user=sa;pwd=123");
            SqlCommand cmd = conn.CreateCommand();
            cmd.CommandText = "select * from imgtable where code=1";
            conn.Open();
            SqlDataReader dr = cmd.ExecuteReader();
            dr.Read();
            
                byte[] buffer = (byte[])dr["imgs"];
         
            cmd.Dispose();
            conn.Close();
            MemoryStream ms = new MemoryStream(buffer);
            ms.Write(buffer, 0, buffer.Length);
            Image img = Image.FromStream(ms);
            pictureBox1.Image = img;
        }
    }

 

你可能感兴趣的:(数据库)