博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

数据库中插入和读取图片

Posted on 2013-08-01 16:05  love楠  阅读(598)  评论(0编辑  收藏  举报

插入:picPath是图片的路径

复制代码
try             {                 //把照片通过流的方式读取到字节数组中!                FileStream fs = File.OpenRead(picPath);                 byte[] b =newbyte[fs.Length];                 fs.Read(b, 0, b.Length);
                OleDbConnection con
=new OleDbConnection(DB.connectionString);                 OleDbCommand cmd =new OleDbCommand("INSERT INTO Test (title,pic) VALUES (@title,@pic)", con);                 cmd.Parameters.Add("@title", OleDbType.VarChar).Value = txtTitle.Text;                 cmd.Parameters.Add("@pic", OleDbType.Binary).Value = b;
                con.Open();                 cmd.ExecuteNonQuery();                 con.Close();
                MessageBox.Show(
"保存成功!");             }             catch (Exception ex)             {                 MessageBox.Show(ex.Message);             }
复制代码

 

读取:

复制代码
try             {                 string sql ="select pic from Test where Id = @Id";                 OleDbConnection con =new OleDbConnection(DB.connectionString);                 OleDbCommand cmd =new OleDbCommand(sql, con);                 cmd.Parameters.AddWithValue("@Id", txtId.Text);
                con.Open();                
byte[] b = (byte[])cmd.ExecuteScalar();                 con.Close();
               
if (b !=null)                 {                     MemoryStream ms =new MemoryStream(b);                     pictureBox1.Image = Image.FromStream(ms);                 }                 else                 {                     MessageBox.Show("未找到内容!");                 }             }             catch (Exception ex)             {                 MessageBox.Show(ex.Message);             }
复制代码