ASP 3.0高级编程(三十七)

2016-01-29 19:14 1 1 收藏

ASP 3.0高级编程(三十七),ASP 3.0高级编程(三十七)

【 tulaoshi.com - ASP 】

  8.2.5 Stream对象
       Stream对象用于访问节点的内容,比如一个E-Mail消息,或一个Web页面。利用Stream对象可以访问文件或资源的真实内容。因此,结合Record和Recordset对象,不仅可以访问Web服务器上的文件或email消息,还可以访问相应的内容。这样,就可以创建一个只使用ADO去访问邮件系统的邮件客户。这也许不会有太多的优点,但意味着可不必了解邮件系统的API或对象模型,减少了学习上的弯路。
       Stream的另一个用途是XML,可以访问一系列作为XML流的数据(结构化或半结构化)。
       Stream对象用来处理二进制数据,所以,可以用来处理BLOB类型的数据,比如数据库中的图像或大文本数据。
       同样,在本书第11、12章中你会看到更多的有关Stream对象的例子。

8.2.6 集合
       ADO对象库中有一些集合,每个集合都有零个或更多个与其关联的对象的拷贝。可以使用相同的代码结构去遍历这些集合。
       在VBScript中的语法是:
       For Each object In Collection
              ' Do something with object
       Next
       例如,遍历一个Recordset对象的Fields集:
       For Each objField In rs.Fields
              Response.Write objField.Name & "<BR"
       Next
       如果选择JScript,那么可以使用Enumerator对象:
       for (objField = new Enumerator(rs.Fields);
              !objField.atEnd(); objField.moveNext())
              Response.Write (objField.item().Name + '<BR');
1.  Fields集合
Fields集合拥有与记录集或记录关联的Field对象。对基于结构化数据的记录集,比如SQL数据,字段相应于数据中的列,并含有列的详细内容,比如名称、数据类型、长度等等。在以后几章看到大量的关于Fields集合的例子。
对于半结构化的数据,对象的属性相应于字段。在第12章会看到更多的相关的介绍。
2.  Parameters集合
Parameters集合仅被Command对象使用,确定在存储命令中的参数。SQL数据库中的存储过程频繁地使用参数,并允许数据传入和传出预定义的SQL语句。如果拥有向ADO返回信息的参数,则会十分有用,因为这样从存储过程中返回的就不只是一个记录集。例如,考虑一个更新多个表然后返回一个记录集的复杂存储过程,可以用一个输出参数显示更新了多少条记录。
另一个使用参数的理由是性能问题,特别是在仅仅需要从存储过程返回单个值的时候。在这种情况下,没有创建记录集的必要,只需要保存一个值即可,因而不需要返回记录集,而返回输出参数的值是更为有效的方法。
在第9章会看到有关Parameter集合的详细介绍。
3.  Error集合
Error集合包含因运行命令而引起的上一次ADO或OLE DB提供者错误的详细内容,只能被Connection对象访问。可能会觉得这是个限制,因为不必显式定义Connection对象,但可以通过Command、Recordset和Record对象的ActiveConnection属性访问隐含的Connection对象。例如:
For Each objError In rs.ActiveConnection.Errors
       Response.Write objError.Name & "<BR"
Next
在本章后面,将详细讨论Error集合。
4.  Properties集合
为了避免混乱,Properties集合没有在前面的对象模型图上加以显示。它与对象模型的关系显示在图8-5中:
图8-5  Property与对象之间的关系
Properties集合存在的原因是因为ADO是用来处理许多不同的数据存储,都有不同的特征。将属性(Property)组成一个集合,可以使之能够动态地根据不同的数据提供者而随时改变。例如,Jet的OLE DB提供者允许访问Jet特殊的安全属性:
Set conDB = Server.CreateObject ("ADODB.Connection")
conDB.Open "DSN=Nwind"

conDB.Properties ("Jet OLEDB:Database Password") = "LetMeIn"
其他的提供者没有这个属性,因此把它加到Connection对象中作为

来源:https://www.tulaoshi.com/n/20160129/1508808.html

延伸阅读
标签: ASP
  访问和更新Cookies集合     Cookies的值比ASP其他集合(例如Form和ServerVariables)的值要复杂得多。Cookie是一小块由浏览器存贮在客户端系统上的文本,且随同每次请求发往它们应用于的域中的服务器。     ASP使得应用cookie较为容易,可以从Request对象的Cookies集合中获得所有随同请求发出...
标签: ASP
  5.3.2 Dictionary对象示例        本书提供了一系列示例文件可用来试验脚本运行时间库的各种属性。        本章代码的缺省页面提供了一系列可使用的VBScript示例链接。有些示例对JScript同样有效。这些示例存放在Chapter05目录下相应的子目录里,显示的界面如图...
标签: ASP
  4.3.3 执行其他的网页        ASP 3.0和IIS 5.0的新特性之一就是引入了可编程的服务器端重定向(server-side redirection)的概念。这意味着,可以把一个网页的控制和执行转到另外一个网页,而不需要在客户端使用Response.Rdedirect方法。 1.  客户端重定向带来的问题 ASP编程人员通常使...
标签: ASP
  4.3.5 获取Server对象的路径信息        在对存储在Web网站上的文件进行操作时,需要获得文件的实际的物理路径,而不是使用虚拟路径或URL,尽管在其他网页中能用它们正常地定位文件。下一章中有一个例子,它使用FileSystemObject对Web站点的InetPub\WWWRoot文件夹中的文件进行读写。当创建自己的定...
标签: ASP
  (4)  删除虚拟应用程序 单击“Remove”按钮不会真正地删除Internet Services Manager中的该条目。而是把现有的虚拟应用程序转换为一个虚拟目录。这个目录有一个带有蓝色球的“文件夹”图标,该图标表示这并不是Web网站中一个真正的目录,而是对磁盘上另一个文件夹的一个重定向。对它进行的访问方式与创建它的虚拟应...

经验教程

111

收藏

69

精华推荐

ASP 3.0高级编程(十一)

ASP 3.0高级编程(十一)

笨男孩emp

ASP 3.0高级编程(一)

ASP 3.0高级编程(一)

cheneyfanpku

ASP 3.0高级编程(四)

ASP 3.0高级编程(四)

神仙不绝

微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部