内容摘要:SQL Server:存储图像和BLOB文件(三)要集中讨论了VARBINARY(MAX)数据类型。本文第一部分的代码例子将图像加载到数据库,然后通过使用aspx页面对该图像进行检索和显示。本文将创建一个基于网络的应用程序用来将图像插入到SQL Server里。
从网页将图像插入到SQL Server
本例将使用Microsoft Visual Studio 2008来创建一个网页表单,该表单会要求终端用户浏览并上传文件到SQL Server。这个应用程序也可以在Visual Studio 2005中使用。首先,创建一个新网站和一个代码分离的aspx页面,如下图所示,拖动FileUpload和按钮控制到该表单上。
切换到该页面的源视图,并按下文所示更改默认<form>标签:<form id="form1" runat="server" enctype="multipart/form-data">
“enctype”指定了表单数据如何编码。切换回到设计视图,双击按钮创建OnClick事件,这会将该代码分离的页面调出来,如下显示:

在该页面顶部,添加以下using语句:
usingSystem.Data.Sql;
usingSystem.Data.SqlClient;
Andalsoastatementforthefilesystem:
usingSystem.IO;
添加如下代码到Button1_Click事件中:
stringsConn=@"server=.;database=BLOBTest3;IntegratedSecurity=True";
SqlConnectionobjConn=newSqlConnection(sConn);
objConn.Open();
SqlCommandobjCmd=newSqlCommand("WebUp",objConn);
objCmd.CommandType=CommandType.StoredProcedure;
SqlParameterparamFileData=objCmd.Parameters.Add("@FileData",SqlDbType.VarBinary);
paramFileData.Direction=ParameterDirection.Input;
byte[]bImage=newbyte[FileUpload1.PostedFile.ContentLength];
StreamobjStream=FileUpload1.PostedFile.InputStream;
objStream.Read(bImage,0,FileUpload1.PostedFile.ContentLength);
paramFileData.Value=bImage;
objCmd.ExecuteNonQuery();
objConn.Close();
来源:IT专家网 作者:cyw 责编:豆豆技术应用