sanyuan 发表于 2016-10-14 10:03:50

请问如何把图片上传到SQL SERVER 数据库

请问如何把图片上传到SQL SERVER 数据库???? 并可以浏览?初学DELPHI,现又需实现该功能,大神们帮帮忙,如有源码列子最好。先谢谢大家了。{:7_119:}

江上客-无类 发表于 2016-10-18 20:40:16

帮顶一下吧 这个似乎很有用 不过 图片 要存到 sql里面???
感觉这个想法有点 不那么有趣 你调用不就好了

江上客-无类 发表于 2016-10-18 20:42:46

第一步:
//获取当前选择的图片 this.pictureBox1.Image = Image.FromStream(this.openFileDialog1.OpenFile()); //获取当前图片的路径      string path = openFileDialog1.FileName.ToString(); //将制定路径的图片添加到FileStream类中      FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read); //通过FileStream对象实例化BinaryReader对象      BinaryReader br = new BinaryReader(fs); //通过BinaryReader类对象的ReadBytes()方法将FileStream类对象转化为二进制数组      byte[] imgBytesIn = br.ReadBytes(Convert.ToInt32(fs.Length));

第二步: //将图片添加到数据库中 string sql="insert into pic values(@pic)"; SqlParameter[] param = new SqlParameter[] { new SqlParameter("@pic", imgBytesIn) }; DBHelper.GetExecuteQuery(sql, param);

第三步: //将图片从数据库中取出 string sql="select * from pic where id=0"; SqlDataReader reader = DBHelper.GetExecuteReader(sql, null);      MemoryStream mss = null;      if (reader.Read())      {            byte[] bytes = (byte[])reader["pic"];            mss = new MemoryStream(bytes);      }
         this.pictureBox2.Image = Image.FromStream(mss);

以上是复制来的,但是一般不需要这么做,只需要把图片路径保存就可以了
this.photo.PostedFile.SaveAs(path + "名字.格式");
然后把路径存入数据库
如果存那种image格式放入数据库,图片多的时候就会给数据库造成负担。

以上文字是我抄来的 不是很明白
但我还是觉得你没有必要把图片存到sql里面去吧

511388601 发表于 2016-10-20 14:02:36

同意二楼

sanyuan 发表于 2016-10-31 10:35:09

谢谢二楼,已解决。。。。{:7_113:}
页: [1]
查看完整版本: 请问如何把图片上传到SQL SERVER 数据库