电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > DOC文档下载
分享到微信 分享到微博 分享到QQ空间

ASP30高级编程(三十六)

  • 资源ID:470533929       资源大小:32KB        全文页数:4页
  • 资源格式: DOC        下载积分:10金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要10金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

ASP30高级编程(三十六)

第8章 ADO基础在本书前7章中,已经讲述了ASP的有关内容,以及ASP如何为Web站点带来动态的内容。已经见到其脚本程序允许自定义Web页面,使我们能够构建功能更为强大的ASP页面。现在,将研究ASP和数据的集成。虽然对用于网页中的脚本数量并无任何限制,但如果没有某种形式的数据,很快就会进入一个死胡同。数据构成了Web站点的实际内容,或者指出了如何设置Web站点,因此总的说来数据是非常重要的。如果围绕数据存储建立Web站点,改变Web站点时只需要改变相应的数据即可。ActiveX数据对象(ADO)是允许用户与数据存储进行交互的组件。这意味着只要基于某些数据就可建立一个网页,或一种完全交互的电子商务系统。不论哪种方式,都是ADO使我们能与数据进行通信。我们将讨论从数据存储获取和传送数据的主要内容,以及得到数据后的数据处理方法。首先研究什么是ADO及其所包括的组件,然后讨论如何访问数据存储。在下一章,将进一步学习ADO更先进的一些特性,如命令、存储过程和优化应用程序的一些操作技巧。下一步研究Web服务器和浏览器之间的交互过程,以及数据处理过程。然后研究数据存取领域中极具潜力的XML。XML是什么?如何使用?因为XML代表着未来发展的一种趋势,我们将介绍微软关于通用数据存取的构想。在这个构想中,数据不只是从数据库中获得的。最后,看一下标准的微软数据库(如Access与sql server)以及在其中如何使用ADO。本章从ADO开始,主要内容有:· 研究ADO如何与数据进行交互。· 了解ADO的组件。· 如何与数据存储连接和创建数据集。· 如何处理和修改数据。· 如何处理ADO错误。8.1 ADO的定义ADO是一个相当简单的思想,一种让你仅用一种方式去访问数据的思想。ADO不算一个新思想,仅是采用现有的数据库访问技术,并将其融合而形成的一种适应现在和未来需要的新东西。适应未来的需求是一件十分重要的事。许多其他的技术,比如DAO和ODBC,在一些应用程序的开发过程中是可以接受的,然而随着Internet的兴起也出现了其自身的一些问题。在许多情况下,传统的数据存取方法看上去能解决一些关于两层客户/服务器系统的问题,但要求与数据之间要保持一种永久性的连接,并要提供强大的功能,比如快速响应的查询、数据容易修改等。在Internet领域,现在必须考虑到Web无状态性本质,和潜在的众多可以访问Web站点的用户。要与数据建立永久的连接是不现实的,因此必须在设计应用程序时考虑这些因素。那么,OLD DB和ADO确切地讲到底是什么?让我们与一些已有的数据存取技术做比较后再来回答这个问题。如果读者曾经接触过数据库编程,或许比较熟悉ODBC和RDO。开放数据库连接(ODBC)是允许访问关系数据库(比如Access和SQL Server)的应用程序编程接口(API)。正因为是一个API,许多程序员,特别是Visual Basic领域的程序员,发现它使用起来很复杂。远程数据对象(RDO)是位于ODBC上层的ActiveX对象,可以提供ODBC的所有功能,并且使用起来比较简单。可以将OLE DB等同于ODBC,ADO等同于RDO。OLE DB是应用程序与数据源交互的一种基本技术。这相当复杂,确实也只有C和C+程序员能够使用。正如ADO的名字所暗示的,它是易于访问OLE DB功能的ActiveX对象。你或许发现术语ActiveX与COM对象经常混用。对于ASP程序员来说它们并没有本质上的区别,因为两者都基于COM系统结构,只不过ActiveX是组件的一个跨平台标准,而COM是Windows专有的。虽然微软已经引入了一种新的存取数据的技术,但并没有立即取消旧的技术,ODBC工作起来仍然很有效,并同OLE DB和ADO紧密地一起工作着。事实上,ODBC并不只是微软的产品,也受到国际组件的控制。并且由于广泛的使用,ODBC也不会突然消亡。隐藏在OLE DB背后的思想不是摒弃现有的技术,而是不断地改进它们。8.1.1 OLE DB和ADO的体系结构前面已经给出了OLE DB与ADO在一些主要方面的简要解释。图8-1显示了这两项技术与应用程序和数据存储相互关系:图8-1 OLE DB、ADO与应用程序和数据存储的关系从图8-1中可以看出整体思路。图的顶端是应用程序(Web或常规的应用程序,这是无关紧要的),下面是提供对数据的访问的ADO和/或OLE DB。ADO和OLE DB两者兼有是因为OLE DB是一项基本技术。然而,OLE DB并不适用于所有语言,所以ADO位于OLE DB的上层,为那些不能直接访问OLE DB的语言(如Visual Basic和脚本语言)提供编程接口。ADO提供了比OLE DB更容易的编程接口,因此即使那些可以直接使用OLE DB的编程语言,如C+或Java,也可使用ADO以简化对数据的访问。图8-1显示的是微软的编程语言,而ADO是一个COM组件,因此可用于任何与COM兼容的编程语言,比如Delphi或支持Active Scripting接口的脚本语言。所以,虽然ADO与平台有关,但与开发的语言是无关的。当然,对于ASP主要使用VBScript和JScript,在组件中使用ADO时,有一些Visual Basic代码。现在知道了OLE DB和ADO允许访问数据,可是为什么需要它们?老方法出问题了吗?这里有两个主要原因:首先,OLE DB和ADO是用来访问数据存储的。注意这里指“数据存储”而不是“数据库”。尽管数据库仍旧是数据存储最为广泛的形式,但并不一定含有全部的数据。一些消息系统,如Microsoft Exchange Server,也普遍地用于存储数据。目录服务(Directory Service)正开始在初露端倪,它们包含着有关用户、机器等的数据;Web服务器中存有大量的信息。可以继续罗列下去,很明显需要一种能访问所有这些不同类型数据的方法。其次,源于Internet应用程序的兴起与Web的状态本质。过去的访问数据的方法主要考虑与数据存储保持永久连接的情况下处理数据。而OLE DB和ADO正是为解决这个问题而设计的,提供断开连接的记录集,我们将会在后面看到有关这方面的内容。8.1.2 消费者与提供者ADO系统结构图展示了ADO是如何在应用程序和真实数据存储之间发挥作用的。在微软的文献中,会看到两个易懂的术语:消费者(Consumer)和提供者(Provider),但搞清它们的确切定义至关重要。提供者是提供数据的物体,消费者是使用(消耗)这些数据的物体。在编程中,经常会发现应用程序是数据的消费者。但提供者呢?一般是数据存储,并且由于OLE DB被设计成用于与不同的数据存储对话,因此对于每一个独特类型的数据存储都有一个OLE DB提供者。这种单独提供者的思想并不新,但使编程变得容易了。编写程序与ADO或OLE DB对话,OLE DB再与提供者对话。这意味着只需学会一套访问数据的方法,无论数据如何存储,在某些情况下确实可以完全不改变任何代码而只更换提供者。这就是ADO和OLE DB真正优越的地方,为数据存储提供了一套常用的编程接口。要连接到数据存储,必须使用OLE DB提供者。提供给ADO 2.5的初始设置为:· Jet OLE DB 4.0:用于微软Access数据库。· DTS Packages:用于SQL Server的数据转换服务(Data Transformation Services)。· Internet Publishing:用于访问Web服务器。· Indexing Services:用于索引目录(Index Catalogs)。· Site Server Search:用于站点服务器查找目录。· ODBC Drivers:用于ODBC数据源。· OLAP Services:用于微软OLAP服务器。· Oracle:用于Oracle数据库。· SQL Server:用于微软SQL Server数据库。· Simple Provider:用于简单的文本文件。· MSDataShape:用于层次数据。· Microsoft Directory Services:用于Windows 2000的目录服务。· DTS Flat File:用于SQL Server的数据转换服务的平面文件管理。这只是微软提供的初始列表,并取决于安装在服务器上的服务及软件。以Oracle数据提供者为例,要求在客户机上安装Oracle的客户端软件。可以从别的制造商那里获得OLE DB提供者,用于其他数据存储。甚至还可以编写自己的提供者。在第11章,将演示如何编写简单的OLE DB提供者。要想知道系统安装了哪些提供者,可以使用Data Link properties对话框。在本章后面,将介绍如何使用它。8.1.3 提供者和驱动程序值得注意的是,OLE DB对ODBC的兼容性,允许OLE DB访问现有的ODBC数据源。其优点很明显,由于ODBC相对OLE DB来说使用得更为普遍,因此可以获得的ODBC驱动程序相应地要比OLE DB的要多。这样不一定要得到OLE DB的驱动程序,就可以立即访问原有的数据系统。避免混淆提供者与驱动程序是重要的,图8-2明确了它们之间的区别:图8-2 提供者与驱动程序之间的区别提供者位于OLE DB层,而驱动程序位于ODBC层。如果想使用一个ODBC数据源,需要使用针对ODBC的OLE DB提供者,它会接着使用相应的ODBC驱动程序。如果不需要使用ODBC数据源,那么可以使用相应的OLE DB提供者,这些通常称为本地提供者(native provider)。可以清楚地看出使用ODBC提供者意味着需要一个额外的层。因此,当访问相同的数据时,针对ODBC的OLE DB提供者可能会比本地的OLE DB提供者的速度慢一些。8.2 ADO 2.5对象模型虽然在ADO 2.5对象模型中出现了两个新对象,但与以前的版本基本上是类似的。图8-3显示了这些对象以及每个对象之间的关系:图8-3 对象之间的相互关系如果以前使用过ADO,你会发现在这个新版本中出现了两个新对象:Stream和Record对象。在第11、12章将详细介绍它们。Properties集合已经被有意地排除在图8-3外,这样你对几个主要对象之间的交互关系就一目了然了。在本章的后面,有显示Properties集合的简化对象模型。让我们更详细地考察这几个对象。8.2.1 Connection对象Connection对象是使我们能与数据存储相连的对象。只有Connection对象才能指定希望使用的OLE DB提供者、连接到数据存储的安全细节以及其他任何连接到数据存储特有的细节。应用注意的是,不必显式创建一个Connection对象以连接到数据存储。尽管确实需要指定连接细节,但没有Connection对象,一样可以创建Command、Recordset和Record对象。如果不创建自己的Connection对象,ADO将会隐含地为你创建一个Connection对象。如果要对提供者运行多条命令,应该显式地创建一个Connection对象,这比每运行一条命令就创建一个连接更有效。除了为数据存储提供连接以外,Connection对象允许针对数据存储执行命令操作。这些命令可以是结构化的或存储的命令(例如,SQL命令或一个存储过程),并且可以有选择地从数据存储中返回一些数据。8.2.2 Command对象Command对象是对数据存储执行命令的对象。看到这里读者可能会产生疑问,Connection对象不也能这样做吗?是的,但是Connection对象在处理命令的功能上受到一定的限制,而Command对象是特别为处理命令的各

注意事项

本文(ASP30高级编程(三十六))为本站会员(cl****1)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.