网站导航网学 原创论文 原创专题 网站设计 最新系统 原创论文 论文降重 发表论文 论文发表 UI设计定制 论文答辩PPT格式排版 期刊发表 论文专题
返回网学首页
网学原创论文
最新论文 推荐专题 热门论文 论文专题
当前位置: 网学 > 交易代码 > SQL语法 > 正文

SQL图片(1)

论文降重修改服务、格式排版等 获取论文 论文降重及排版 论文发表 相关服务
在SQLServer中保存和输出图片
    有时候我们需要保存一些binarydata进数据库。SQLServer提供一个叫做image的特殊数据类型供我们保存binarydata。Binarydata可以是图片、文档等。在这篇文章中我们将看到如何在SQLServer中保存和输出图片。
    建表
    为了试验这个例子你需要一个含有数据的table(你可以在现在的库中创建它,也可以创建一个新的数据库),下面是它的结构:
    ColumnName
    Datatype
    Purpose
    ID
    Integer
    identitycolumnPrimarykey
    IMGTITLE
    Varchar(50)
    Storessomeuserfriendlytitletoidentitytheimage
    IMGTYPE
    Varchar(50)
    Storesimagecontenttype.ThiswillbesameasrecognizedcontenttypesofASP.NET
    IMGDATA
    Image
    Storesactualimageorbinarydata.
    保存images进SQLServer数据库
    为了保存图片到table你首先得从客户端上传它们到你的web服务器。你可以创建一个webform,用TextBox得到图片的标题,用HTMLFileServerControl得到图片文件。确信你设定了Form的encType属性为multipart/form-data。
    Streamimgdatastream=File1.PostedFile.InputStream;
    intimgdatalen=File1.PostedFile.ContentLength;
    stringimgtype=File1.PostedFile.ContentType;
    stringimgtitle=TextBox1.Text;
    byte[]imgdata=newbyte[imgdatalen];
    intn=imgdatastream.Read(imgdata,0,imgdatalen);
    stringconnstr=
    ((NameValueCollection)Context.GetConfig
    ("appSettings"))["connstr"];
    SqlConnectionconnection=newSqlConnection(connstr);
    SqlCommandcommand=newSqlCommand
    ("INSERTINTOImageStore(imgtitle,imgtype,imgdata)
    VALUES(@imgtitle,@imgtype,@imgdata)",connection);
    SqlParameterparamTitle=newSqlParameter
    ("@imgtitle",SqlDbType.VarChar,50);
    paramTitle.Value=imgtitle;
    command.Parameters.Add(paramTitle);
    SqlParameterparamData=newSqlParameter
    ("@imgdata",SqlDbType.Image);
    paramData.Value=imgdata;
    command.Parameters.Add(paramData);
    SqlParameterparamType=newSqlParameter
    ("@imgtype",SqlDbType.VarChar,50);
    paramType.Value=imgtype;
    command.Parameters.Add(paramType);
    connection.Open();
    intnumRowsAffected=command.ExecuteNonQuery();
    connection.Close();
    从数据库中输出图片
    现在让我们从数据库中取出我们刚刚保存的图片,在这儿,我们将直接将图片输出至浏览器。你也可以将它保存为一个文件或做任何你想做的。
    privatevoidPage_Load(objectsender,System.EventArgse)
    {
    stringimgid=Request.QueryString["imgid"];
    stringconnstr=((NameValueCollection)
    Context.GetConfig("appSettings"))["connstr"];
    stringsql="SELECTimgdata,imgtypeFROMImageStoreWHEREid="
    +imgid;
    SqlConnectionconnection=newSqlConnection(connstr);
    SqlCommandcommand=newSqlCommand(sql,connection);
    connection.Open();
    SqlDataReaderdr=command.ExecuteReader();
    if(dr.Read())
    {
    Response.ContentType=dr["imgtype"].ToString();
    Response.BinaryWrite((byte[])dr["imgdata"]);
    }
    connection.Close();
    }
    在上面的代码中我们使用了一个已经打开的数据库,通过datareader选择images。接着用Response.BinaryWrite代替Response.Write来显示image文件。
    
  • 上一篇资讯: SQL图片
  • 下一篇资讯: sql和mysql
  • 设为首页 | 加入收藏 | 网学首页 | 原创论文 | 计算机原创
    版权所有 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2020 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号 常年法律顾问:王律师