|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
Windows本身的所有问题都会一成不变的也累加到了它的身上。安全性、稳定性、跨平台性都会因为与NT的捆绑而显现出来;编程|初级8.2.5Stream工具
Stream工具用于会见节点的内容,好比一个E-Mail动静,或一个Web页面。使用Stream工具能够会见文件或资本的实在内容。因而,分离Record和Recordset工具,不但能够会见Web服务器上的文件或email动静,还能够会见响应的内容。如许,就能够创立一个只利用ADO往会见邮件体系的邮件客户。这大概不会有太多的长处,但意味着可不用懂得邮件体系的API或工具模子,削减了进修上的弯路。
Stream的另外一个用处是XML,能够会见一系列作为XML流的数据(布局化或半布局化)。
Stream工具用来处置二进制数据,以是,能够用来处置BLOB范例的数据,好比数据库中的图象或年夜文本数据。
一样,在本书第11、12章中你会看到更多的有关Stream工具的例子。
8.2.6汇合
ADO工具库中有一些汇合,每一个汇合都有零个或更多个与其联系关系的工具的拷贝。可使用不异的代码布局往遍历这些汇合。
在VBScript中的语法是:
ForEachobjectInCollection
Dosomethingwithobject
Next
比方,遍历一个Recordset工具的Fields集:
ForEachobjFieldInrs.Fields
Response.WriteobjField.Name&"<BR>"
Next
假如选择JScript,那末可使用Enumerator工具:
for(objField=newEnumerator(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或OLEDB供应者毛病的具体内容,只能被Connection工具会见。大概会以为这是个限定,由于不用显式界说Connection工具,但能够经由过程Command、Recordset和Record工具的ActiveConnection属性会见隐含的Connection工具。比方:
ForEachobjErrorInrs.ActiveConnection.Errors
Response.WriteobjError.Name&"<BR>"
Next
在本章前面,将具体会商Error汇合。
4.Properties汇合
为了不凌乱,Properties汇合没有在后面的工具模子图上加以显现。它与工具模子的干系显现在-5中:
-5Property与工具之间的干系
Properties汇合存在的缘故原由是由于ADO是用来处置很多分歧的数据存储,都有分歧的特性。将属性(Property)构成一个汇合,可使之可以静态地依据分歧的数据供应者而随时改动。比方,Jet的OLEDB供应者同意会见Jet特别的平安属性:
SetconDB=Server.CreateObject("ADODB.Connection")
conDB.Open"DSN=Nwind"
conDB.Properties("JetOLEDB:DatabasePassword")="LetMeIn"
其他的供应者没有这个属性,因而把它加到Connection工具中作为一个静态属性是不明智的。ADO依据所利用的OLEDB供应者,会用供应者缺省值添补属性汇合。
固然这里有关于Properties汇合的利用申明,但在本书中禁绝备具体叙说Properties汇合。要取得更多的关于该汇合的先容,请参阅《ProfessionalADO2.5Programming》或《ADO2.5ProgrammingsReference》,二者都由Wrox出书。
8.2.7ADO常数
当利用ADO时,会发明有很多事后界说的用于浩瀚选项的常数,好比界说光标范例和锁范例的常数。利用像VisualBasic或VisualC++如许的言语,一旦援用了ADO范例库,天然会用到这些常数。在ASP中情形分歧,有两种选择。
援用常数的第一种办法是把它们包括进ASP文件:
<!--#INCLUDEFILE="adovbc.inc"-->
能够将包括文件拷进当地目次,大概从安装目次援用它,其缺省路径为C:ProgramFilesCommonFilesSystemado(以上文件包括用于VBScript的ADO常数――关于JScript,应当利用adojavas.Inc)。利用这个办法的一点不敷是会使ASP页面变得过年夜,由于包括了全体的常数,而个中很多是不必要利用的。
能够创立本人的只含有所必要的常数的包括文件,但愈来愈多利用ADO的功效时,极可能会发明必要不休地编纂、保护这个文件。
一个对照好的办理的办法是创立一个对范例库的援用,这类办法不必要将常数包括进ASP文件而间接能够援用常数:
<!--METADATATYPE="typelib"FILE="C:ProgramFiles
CommonFilesSystemadomsado15.dll"-->
不要嫌疑这个DLL的名字是msado15.dll,这是一个准确的名字,包括最新版本的ADO。
能够在必要的中央把这个METADATA语句包括进每个ASP文件,大概放进global.asa文件,如许使用程序中的每一个Web页面都能够援用这些常数。
8.3毗连到数据存储
假如必要会见一个数据存储,应当创立一个到数据存储的毗连。后面已提到过:能够显式地创立一个Connection工具,大概让ADO隐含地创立一个毗连。关于任何一种体例,都必需晓得数据存储的具体内容。
固然用于毗连的实践细节不尽不异,但关于一切范例的数据存储,其毗连的实践办法是不异的。这其实不使人惊异,由于分歧的供应者必要分歧范例的信息。在同意用户会见数据存储之前,一些供应者必要用户的证书,而其余供应者却承受默许的平安证书。
毗连到数据源有好几种办法:
・毗连字符串。在字符串中放进毗连的细节,或在翻开数据存储时,间接将毗连细节到场到命令中。这类办法的长处是毗连细节将保存在ASP页面中。不敷的地方,假如你有较多的页面,在改动了毗连细节时,将陷于沉重的保护事情傍边。办理的办法是创立一个包括毗连细节的字符串变量,并放进一个ASP包括文件,如许的话仅唯一一个毗连字符串的实例,但能坚持与其他的ASP页面符合。另外一个经常使用的手艺就是将使用程序中的毗连字符串存储到形态变量中,如许能够被使用程序中的一切页面利用。
・数据链接文件。这是一个含有毗连细节的文件(扩大名为.udl)。长处是关于任何数据的ASP页面只必要一个数据链接文件。要创立一个数据链接文件,只需创立一个新的文本文件,偏重新定名(要确保Windows资本办理器显现文件扩大名)。一旦从头定名了该文件,就能够翻开它(双击)以显现DataLinkProperties对话框。以</p>[1][2]下一页
因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。还无法完全实现一些企业级的功能:完全的集群、负载均横。 |
|