asp.net 如何将图片存入到数据库中,并读取出来?

Donniezhu 2010-03-09 06:18:25
在asp.net 使用C#语言,如何将图片、视频、音频装换成代码(比如二进制)存入到数据库中,之后能够读取出来,最好能绑定DataGrid或者GridView。

如果有高人请指点一下,我只有100分了,万分感谢!
...全文
731 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
xingshungames 2010-03-10
  • 打赏
  • 举报
回复
存入数据库的方法,楼上高手已经有了。。。。但是感觉如果不是非常重要的图片等,不要存在数据库里面,在数据库中保存好路径就好
YnSky 2010-03-10
  • 打赏
  • 举报
回复
string yw_spbm = Request.QueryString["id"].ToString();
SqlConnection conn = new SqlConnection("user id=sa;password=XXXX;initial catalog=XXXX;data source=.;");
SqlDataAdapter adapter = new SqlDataAdapter("select top 1 picture_file from yw_commodity_picture where picture_lx='主图' and yw_spbm='9900007525'", conn);
DataSet ds_pic = new DataSet();
adapter.Fill(ds_pic);
if (ds_pic.Tables[0].Rows.Count != 0)
{
/// this.Image1.Visible = false;
this.Response.ContentType = "image/*";
this.Response.BinaryWrite(System.Text.Encoding.Default.GetBytes(ds_pic.Tables[0].Rows[0]["picture_file"].ToString()));
}
jack15850798154 2010-03-10
  • 打赏
  • 举报
回复
给个思路。把图片的路径保存为二进制文件存入数据库中。然后在绑定数据源的时候在把二进制图片路径给转成String 类型。。<asp:Image Runat=server ID="Image1"
ImageUrl=' <%# FormatURL(Eval("ID")) %>' />
这样就可以了。具体语法可以上GOOGLE上查找(很多)
HatoLee 2010-03-10
  • 打赏
  • 举报
回复
数据库里存个地址就可以了
teita731 2010-03-10
  • 打赏
  • 举报
回复
对一般人来说,通常都是将图片路径存入数据库,绑定时绑定图片路径显示图片吧...要说安全性,大家一直都这么做,也没见多少人抱怨数据丢失啊...

如果非要将图片和视频音频存入数据库,可以将之转换为二进制流存入数据库,不过这样一来,图片多的话会导致数据库非常庞大...
凤凰涅檠 2010-03-10
  • 打赏
  • 举报
回复
引用 20 楼 miaodanni 的回复:
引用 18 楼 dingliqin 的回复:
这个还是很有用的!如果只是存储路径,信息容易流失!但是用流的话,安全性就高的多!
这个回答正确哟,我一个同学用到过,很多人也这么说,用流比较好


通常的情况是存路径。。。
尘封已久 2010-03-10
  • 打赏
  • 举报
回复
引用 18 楼 dingliqin 的回复:
这个还是很有用的!如果只是存储路径,信息容易流失!但是用流的话,安全性就高的多!

这个回答正确哟,我一个同学用到过,很多人也这么说,用流比较好
hj88624 2010-03-10
  • 打赏
  • 举报
回复
将图片路径保存在数据库就行,将图片放在程序路径下的文件夹中,调用时根据图片路径来显示
dingliqin 2010-03-10
  • 打赏
  • 举报
回复
这个还是很有用的!如果只是存储路径,信息容易流失!但是用流的话,安全性就高的多!
hs1983 2010-03-10
  • 打赏
  • 举报
回复
可以将图片转成二进制流存入数据库。

 string FullName = file_data.FileName.ToString();//文档全名
int Length = file_data.FileName.Length;
string fn = DateTime.Now.ToString("yyyyMMddHHmmss") + FullName;
string Type = FullName.Substring(FullName.LastIndexOf(".") + 1);//提取文档类型
file_data.SaveAs(Server.MapPath("~\\XYGL\\Admin\\Upload") + "\\" + fn);//将导入的TXT文本备份到Upload
string path = Server.MapPath("~\\XYGL\\Admin\\Upload\\" + fn);
FileInfo finfo = new FileInfo(path);
byte[] content = new byte[finfo.Length];
FileStream stream = finfo.OpenRead();
stream.Read(content, 0, content.Length);
stream.Close();
随风落梦 2010-03-10
  • 打赏
  • 举报
回复
引用 15 楼 jelly_tracy 的回复:
引用 8 楼 jxyxhz 的回复:赶快改变思路,不要存到数据库


为什么不要存到数据库呢 ???

没那个必要啊,不重要的图片还是存路径啊,不然如果图片都存数据库,数据库会占用很大空间的
Jelly_tracy 2010-03-10
  • 打赏
  • 举报
回复
引用 8 楼 jxyxhz 的回复:
赶快改变思路,不要存到数据库



为什么不要存到数据库呢 ???
waiwai1015 2010-03-10
  • 打赏
  • 举报
回复
把图片的地址存到数据库中就行,然后把地址读取出来,就能找到图片
lhchn 2010-03-10
  • 打赏
  • 举报
回复
问一个,这样把照片存放入数据库的话会不会导致当存在大量的数据读取显示时,查找效率低下
csb5201314 2010-03-10
  • 打赏
  • 举报
回复
图片还是保存路径好。。。
zhang_yugang 2010-03-10
  • 打赏
  • 举报
回复
保存路径把。。。。。。。。。。。
兔儿爷 2010-03-09
  • 打赏
  • 举报
回复
图片做过,很容易绑定,但视频,声频就没做过了,期待答案。
图片按楼上的做法就可以了。
小_虎 2010-03-09
  • 打赏
  • 举报
回复
赶快改变思路,不要存到数据库
wuyq11 2010-03-09
  • 打赏
  • 举报
回复
<IMG src="a.aspx?id=1" align="absmiddle">
int Id=int.Parse(Request.QueryString["id"]);
using(SqlConnection conn=new SqlConnection())
{
conn.ConnectionString="";

string strSql="select * from Tb where Id='"+Id+"'";
SqlCommand cmd=new SqlCommand(strSql,conn) ;
conn.Open();
SqlDataReader reader=cmd.ExecuteReader();

if(reader.Read())
{
Response.ContentType = "application/octet-stream";
Response.BinaryWrite((Byte[])reader["Photo"]);
}
Response.End();
conn.Close();
}
gridview中
<asp:TemplateColumn HeaderText="照片">
<ItemTemplate>
<asp:Image Runat=server ID="Image1"
ImageUrl=' <%# FormatURL(Eval("ID")) %>' />
</ItemTemplate>
</asp:TemplateColumn>
获取图片或连接页面
hudelan 2010-03-09
  • 打赏
  • 举报
回复
把图片地址存到数据库中不就行
加载更多回复(5)

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧