转化为二进制格式再存到Image类型的字段中
try
{
FileInfo fi = new FileInfo(filename);
if (!fi.Exists)
{
MessageBox.Show("该文件名不存在");
}
byte[] contents = new byte[fi.Length];
FileStream fs = fi.OpenRead();
fs.Read(contents, 0, contents.Length);
fs.Close();
string str1 = "server=127.0.0.1;database=xu;uid=sa;pwd=''";
SqlConnection sqlconn = new SqlConnection(str1);
sqlconn.Open();
string str3 = "insert into sc(sno,image) values(@sno,@image) ";
SqlCommand sqlcomm = new SqlCommand(str3, sqlconn);
sqlcomm.Parameters.Add("@sno", SqlDbType.Char, 5);
sqlcomm.Parameters.Add("@image", SqlDbType.Image, 16);
sqlcomm.Parameters["@sno"].Value = "0521";
sqlcomm.Parameters["@image"].Value = contents;
sqlcomm.ExecuteNonQuery();
sqlconn.Close();
MessageBox.Show("图像文件 " + fi.FullName + " 成功上传到数据库!");
}
catch (Exception exc)
{
MessageBox.Show(exc.Message);
}
try
{
FileInfo fi = new FileInfo(filename);
if (!fi.Exists)
{
MessageBox.Show("该文件名不存在");
}
byte[] contents = new byte[fi.Length];
FileStream fs = fi.OpenRead();
fs.Read(contents, 0, contents.Length);
fs.Close();
string str1 = "server=127.0.0.1;database=xu;uid=sa;pwd=''";
SqlConnection sqlconn = new SqlConnection(str1);
sqlconn.Open();
string str3 = "insert into sc(sno,image) values(@sno,@image) ";
SqlCommand sqlcomm = new SqlCommand(str3, sqlconn);
sqlcomm.Parameters.Add("@sno", SqlDbType.Char, 5);
sqlcomm.Parameters.Add("@image", SqlDbType.Image, 16);
sqlcomm.Parameters["@sno"].Value = "0521";
sqlcomm.Parameters["@image"].Value = contents;
sqlcomm.ExecuteNonQuery();
sqlconn.Close();
MessageBox.Show("图像文件 " + fi.FullName + " 成功上传到数据库!");
}
catch (Exception exc)
{
MessageBox.Show(exc.Message);
}
private void button1_Click(object sender, EventArgs e) //存图片
{
Stream ms;
byte[] picbyte;
OpenFileDialog ofdSelectPic = new OpenFileDialog();
ofdSelectPic.ShowDialog();
ms = ofdSelectPic.OpenFile();
picbyte = new byte[ms.Length];
ms.Position = 0;
ms.Read(picbyte, 0, Convert.ToInt32(ms.Length)); SqlConnection conn = new SqlConnection("server=.;uid=sa;pwd=;database=s");
conn.Open();
string sqlstring = "insert into ttt(image) values(@img)";
SqlCommand cmd = new SqlCommand(sqlstring, conn);
cmd.Parameters.Add("@img", SqlDbType.Image, picbyte.Length).Value = picbyte;
cmd.ExecuteNonQuery();
conn.Close();
} private void button2_Click(object sender, EventArgs e) //取图片
{
SqlConnection conn = new SqlConnection("server=.;uid=sa;pwd=;database=s");
conn.Open();
string strSql = "select image from ttt ";
SqlCommand cmd = new SqlCommand(strSql, conn);
SqlDataReader sdr = cmd.ExecuteReader();
sdr.Read();
MemoryStream ms = new MemoryStream((byte[])sdr[0]);
Image image = Image.FromStream(ms);
sdr.Close();
conn.Close();
pictureBox1.Image = image;
}