如何使用.NET向SQLServer数据库存取图片

这篇文章主要介绍“如何使用.NET向SQL Server数据库存取图片”,在日常操作中,相信很多人在如何使用.NET向SQL Server数据库存取图片问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何使用.NET向SQL Server数据库存取图片”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

创新互联,专注为中小企业提供官网建设、营销型网站制作、响应式网站设计、展示型成都网站制作、做网站等服务,帮助中小企业通过网站体现价值、有效益。帮助企业快速建站、解决网站建设与网站营销推广问题。

使用.NET向SQL Server数据库存取图片

使用.Net技术,我们可以很方便的将图片存入SQL Server数据库中并方便的读取显示出来,详细的实现方法我们一步一步将会了解到。先说如何将图片存储到sql server数据库中:

.NET向SQL Server数据库存取图片技巧:存入图片

使用asp.net将图片上传并存入SQL Server中,然后从SQL Server中读取并显示出来:

1)上传并存入SQL Server

数据库结构

create table test   {   id identity(1,1),   FImage image   }

相关的存储过程

Create proc UpdateImage   (   @UpdateImage Image   )   As   Insert Into test(FImage) values(@UpdateImage)   GO

在UpPhoto.aspx文件中添加如下:

< input id="UpPhoto" name="UpPhoto" runat="server" type="file">   < asp:Button id="btnAdd" name="btnAdd" runat="server" Text="上传">< /asp:Button>

然后在后置代码文件UpPhoto.aspx.cs添加btnAdd按钮的单击事件处理代码:

private void btnAdd_Click(object sender, System.EventArgs e)   {   //获得图象并把图象转换为byte[]   HttpPostedFile upPhoto=UpPhoto.PostedFile;   int upPhotoLength=upPhoto.ContentLength;   byte[] PhotoArray=new Byte[upPhotoLength];   Stream PhotoStream=upPhoto.InputStream;   PhotoStream.Read(PhotoArray,0,upPhotoLength);   //连接数据库   SqlConnection conn=new SqlConnection();   conn.ConnectionString="Data Source=localhost;Database=test;User Id=sa;Pwd=sa";   SqlCommand cmd=new SqlCommand("UpdateImage",conn);   cmd.CommandType=CommandType.StoredProcedure;   cmd.Parameters.Add("@UpdateImage",SqlDbType.Image);   cmd.Parameters["@UpdateImage"].Value=PhotoArray;   //如果你希望不使用存储过程来添加图片把上面四句代码改为:   //string strSql="Insert into test(FImage) values(@FImage)";   //SqlCommand cmd=new SqlCommand(strSql,conn);   //cmd.Parameters.Add("@FImage",SqlDbType.Image);   //cmd.Parameters["@FImage"].Value=PhotoArray;   conn.Open();   cmd.ExecuteNonQuery();   conn.Close();   }

.NET向SQL Server数据库存取图片技巧:从SQL Server中读取并显示出来

在需要显示图片的地方添加如下代码:

< asp:image id="imgPhoto" runat="server" ImageUrl="ShowPhoto.aspx">< /asp:image>

ShowPhoto.aspx主体代码:

private void Page_Load(object sender, System.EventArgs e)   {   if(!Page.IsPostBack)   {   SqlConnection conn=new SqlConnection()   conn.ConnectionString="Data Source=localhost;Database=test;User Id=sa;Pwd=sa";   string strSql="select * from test where id=2";//这里假设获取id为2的图片   SqlCommand cmd=new SqlCommand(strSql,conn);   conn.Open();  SqlDataReader reader=cmd.ExecuteReader();  reader.Read();   Response.ContentType="application/octet-stream";   Response.BinaryWrite((Byte[])reader["FImage"]);   Response.End();   reader.Close();   }   }

到此,关于“如何使用.NET向SQL Server数据库存取图片”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


分享标题:如何使用.NET向SQLServer数据库存取图片
当前链接:http://hbruida.cn/article/ggcphp.html