文档详情

NET在SQL Server中的图片存取技术.doc

发布:2018-12-19约3.68千字共5页下载文档
文本预览下载声明
NET在SQL Server中的图片存取技术 本文总结如何在.Net WinForm和.Net WebForm()中将图片存入SQL Server中并读取显示的方法。 1.使用将图片上传并存入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=UpPhotoname=UpPhotorunat=servertype=file asp:Button id=btnAddname=btnAddrunat=serverText=上传/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(); } 2)从SQL Server中读取并显示出来 在需要显示图片的地方添加如下代码: asp:image id=imgPhotorunat=serverImageUrl=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(); } }
显示全部
相似文档