sqlserver:存储图像和blob文件(二)

sqlserver:存储图像和blob文件(二)

ID:22372263

大小:58.50 KB

页数:6页

时间:2018-10-28

sqlserver:存储图像和blob文件(二)_第1页
sqlserver:存储图像和blob文件(二)_第2页
sqlserver:存储图像和blob文件(二)_第3页
sqlserver:存储图像和blob文件(二)_第4页
sqlserver:存储图像和blob文件(二)_第5页
资源描述:

《sqlserver:存储图像和blob文件(二)》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、SQLServer:存储图像和BLOB文件(二)>>教育资源库  在本系列的第一篇文章中,我们讨论了二进制和BLOB(二进制大型对象)的定义,以及在什么情况下应当将这些对象存储在SQLServer里。将图像和二进制数据存储在SQLServer内部的原因包括方便安全性管理、客户访问之便和事务控制。本文将着眼于varBinary(MAX)数据类型,在SQLServer2005和2008中都有这种数据类型,其扩展说明符(MAX)意味着不设置文件大小的上限。var指文件大小是可变,不像标准二进制数据类型那样是个固定值。在SQLServer的联机丛书提供了三种二进制数据类型的使用条件说明:当表列的所

2、有输入数据大小为固定值(且长度小于8000字节)时,使用标准二进制Binary数据类型;当表列的输入数据长度有很大差别(且长度均小于8000字节)时,使用varBinary数据类型;当表列输入数据长度超过8000字节时,使用varBinary(max)数据类型。对于SQLServer2000,则使用图像(Image)数据类型。不过请记住,微软已经声明图像数据类型是为了向下兼容才保留下来的,而且可能会在未来的版本中停止使用。  例表  首先,我们要创建一个测试数据库和表来装载我们的图片。使用以下的T-SQL语句:  USEmaster;  GO  CREATEDATABASETest;  G

3、O  USETest;  GO  CREATETABLEBLOBTest  (  TestIDintIDENTITY(1,1),  BLOBNamevarChar(50),  BLOBDatavarBinary(MAX)  );  在本例中,列的名称为BLOBData,不过您可以使用任何标准的SQL名称为列命名。二进制数据类型对命名没有任何限制。  如果您运行的是SQLServer2005和2008,找一张小图片,并执行下面的T-SQL语句插入该图像来测试数据库。该语句在SQLServer2000中无效,因为只有varBinary(MAX)数据类型才能成为插入目标:INSERTINTOBL

4、OBTest(BLOBName,BLOBData)SELECT'Firsttestfile', BulkColumnFROMOPENROBLOBTest  SELECT语句会核实数据是否已经插入,不过这还不是在SQL中查看该图片的方法。为了查看图片,我们需要创建一个小的VisualStudio应用程序。  二进制数据读取  本例将从SQL读取已存储的图像,并利用VisualStudio在网页上展示图像。创建一个没有代码分离的新页面。代码分离的例子稍后再做介绍。<%PageLanguage=C#%><%ImportNamespace=System.Data%

5、><%ImportNamespace=System.Data.SqlClient%><%  stringsConn=server=.;database=Test;IntegratedSecurity=True;  SqlConnectionobjConn=neandobjCmd=neand(sTSQL,objConn);  objCmd.mandType=mandType.Text;  SqlDataReaderdr=objCmd.ExecuteReader();  dr.Read();  Response.BinaryL1.0Transitional//EN.l1

6、/DTD/xhtml1-transitional.dtd>  <scriptrunat=server>  </script>  <htmlxmlns=.l><headrunat=server>  <title>UntitledPage</title></head><body>  <formid=form1runat=server>  <div>  <12下一页>>>>这篇文章来自..,。;/div>  </form></body>&

7、lt;/html>  该网页将使用sConn变量来查找数据库。IntegatredSecurity=True将指定使用的L1.0Transitional//EN.l1/DTD/xhtml1-transitional.dtd>  <scriptrunat=server>  </script>  <htmlxmlns=.l><headrunat=server>  &

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。