2006-11-28

ASP.NET如何存取 SQLServer数据库图片

来源: aspcool 作者:佚名 评论 0 条
  SQL Server提供了一个非凡的数据类型:image,它是一个包含binary数据的类型。下边这个例子就向你展示了如何将文本或照片放入到数据库中的办法。在这篇文章中我们要看到如何在SQL Server中存储和读取图片。

  1、建立一个表:

  在SQL SERVER中建立这样结构的一个表:

  





  2、存储图片到SQL SERVER数据库中

  为了能存储到表中,你首先要上传它们到你的WEB 服务器上,你可以开发一个web form,它用来将客户端中TextBox web control中的图片入到你的WEB服务器上来。将你的 encType 属性设置为:myltipart/formdata.

  Stream imgdatastream = File1.PostedFile.InputStream;

  int imgdatalen = File1.PostedFile.ContentLength;

  string imgtype = File1.PostedFile.ContentType;

  string imgtitle = TextBox1.Text;

  byte[] imgdata = new byte[imgdatalen];

  int n = imgdatastream.Read(imgdata,0,imgdatalen);

  string connstr=((NameValueCollection)Context.GetConfig("appSettings"))["connstr"];

  SqlConnection connection = new SqlConnection(connstr);

  SqlCommand command = new SqlCommand

  ("INSERT INTO ImageStore(imgtitle,imgtype,imgdata)

  VALUES ( @imgtitle, @imgtype,@imgdata )", connection );

  SqlParameter paramTitle = new SqlParameter

  ("@imgtitle", SqlDbType.VarChar,50 );

  paramTitle.Value = imgtitle;

  command.Parameters.Add( paramTitle);

  SqlParameter paramData = new SqlParameter( "@imgdata", SqlDbType.Image );

  paramData.Value = imgdata;

  command.Parameters.Add( paramData );

  SqlParameter paramType = new SqlParameter( "@imgtype", SqlDbType.VarChar,50 );

  paramType.Value = imgtype;

  command.Parameters.Add( paramType );

  connection.Open();

  int numRowsAffected = command.ExecuteNonQuery();

  connection.Close();

  3、从数据库中恢复读取

  现在让我们来从SQL Server中读取我们放入的数据吧!我们将要输出图片到你的浏览器上,你也可以将它存放到你要的位置。

  private void Page_Load(object sender, System.EventArgs e)

  {

  string imgid =Request.QueryString["imgid"];

  string connstr=((NameValueCollection)

  Context.GetConfig("appSettings"))["connstr"];

  string sql="SELECT imgdata, imgtype FROM ImageStore WHERE id = " imgid;

  SqlConnection connection = new SqlConnection(connstr);

  SqlCommand command = new SqlCommand(sql, connection);

  connection.Open();

  SqlDataReader dr = command.ExecuteReader();
共4页: 上一页 1 [2] [3] [4] 下一页
(本文仅表明作者个人观点,不代表本站及其管理员立场.) 推荐 收藏 投稿 打印 返回 关闭
上一篇:最佳ASP.NET编程习惯  
下一篇:最大限度优化你的Asp性能
    评论加载中…
 推荐文章
     

网站首页  -  网站地图 -   站长论坛  -  网站投稿  -    -  网站管理
Copyright © 2008 芜湖站长站 All Rights Reserved 皖ICP备07500611号