VB访问数据库的方法及接口的比较_第1页
VB访问数据库的方法及接口的比较_第2页
VB访问数据库的方法及接口的比较_第3页
VB访问数据库的方法及接口的比较_第4页
VB访问数据库的方法及接口的比较_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、    VB访问数据库的方法及接口的比较                                        摘 要:本文介绍了几种Visual Ba

2、sic访问数据库的方法,对这些数据接口的性能进行了比较,并提出相互的转化关系。    要害词:Visual Basic 数据访问接口 DAO RDO ADO        1 VB访问数据库的方法    VB访问数据库的方法很多,一般情况下分成两大类,而每一类又有很多方法。下面以列表的方式列出每一类,及每一类包含的方法。    1.1 接口对象法(API)    &#

3、160;VBSQL:通过DB-Library访问微软的SQL Server     ODBC API:任何一种ODBC数据源 16位和32位     DAO/Jet:本地的Jet/Access.MDB、顺序索引数据库(ISAM)和任何ODBC数据源     DAO/ODBC Direct:任何一种ODBC 数据源(经过RDO)     RDO 2.0:任何一种ODBC数据源(Level或)     

4、;ADO:任何一种ODBC数据源和任何经过OLE DB界面接口的数据源     1.2 数据控件法     Data Control:DAO/Jet数据界面接口    Data Control/ODBC Direct:DAO/ODBC Direct数据界面接口     RemoteData Control/RDC:RDO数据界面接口    Advanced Data Connector/ADC:A

5、DO数据界面接口     2 几种接口的比较    ADC(Advanced Data Connector):高级数据连接器。提供绑定ADO数据源到窗体的数据绑定控件上。ADC主要是一种直接访问或者通过ADO访问远程OLE DB对象的一种技术,它也支持主要应用在微软IE浏览器上的数据绑定控件。它是特地为Web上的浏览器为基础的应用程序而设计的。              

6、60;                             ADO(Active Data Objects):Active数据对象。是DAO/RDO的后继产物,ADO“扩展”了DAO和RDO所使用的对象模型,这意味着它包含较少的对象、更多的属性、方法(和参数),以及事件。ADO实际是一种提供访问各种数据类

7、型的连接机制。ADO设计为一种极简单的格式,通过ODBC的方法同数据库接口。可以使用任何一种ODBC数据源,即不止适合于SQL Server、Oracle、Access等数据库应用程序,也适合于Excel表格、文本文件、图形文件和无格式的数据文件,是一个便于使用的应用程序层接口。ADO是为Microsoft最新和最强大的数据访问范例OLE DB而设计的,OLE DB为任何数据源提供了高性能的访问,这些数据源包括关系和非关系数据库、电子邮件和文件系统、文本和图形、自定义业务对象等等。ADO在要害的Internet方案中使用最少的网络流量,并且在前端和数据源之间使用最少的层数,所有这些都是为了提供

8、轻量、高性能的接口。因此ADO通过其内部的属性和方法提供统一的数据访问接口方法。    DAO(Data Access Objects):数据访问对象。是一种面向对象的界面接口。通过DAO/Jet功能可以访问ISAM数据库,使用DAO/ODBC Direct功能可以实现远程RDO功能。使用DAO的程序编码非常简单,DAO提供丰富的游标(Cursor)类型的结果集和非游标(Cursor-Less)类型的结果集,同DDL(数据描述语言)的功能很类似。DAO可通过ODBC像直接连接到其它数据库一样,直接连接到Access数据库。DAO最适用于单系统应用程序或小

9、范围本地分布使用。DAO模型是设计关系数据库系统结构的对象类的集合。它们提供了完成治理这样一个系统所需的全部操作的属性和方法,包括创建数据库,定义表、字段和索引,建立表间的关系,定位和查询数据库等工具。                                 &

10、#160;          JET(Joint Engine Technology):数据连接性引擎技术。是一种基于工作站通过DAO的数据库访问机制。虽然可以通过微软Access提供的ODBC驱动程序访问Jet数据库,但使用这些驱动程序在功能上有所限制。Jet机制有自己的查询和结果集处理功能,并可对同种或异种数据源作查询处理。    0DBC(Open Database Connectivity):开放式的数据库连接技术。为异种数据库的访问提供了统一的接

11、口。ODBC基于SQL(Structured Query Language),并把它作为访问数据库的标准。这个接口提供了最大限度的相互可操作性:一个应用程序可以通过一组通用的代码访问不同的数据库治理系统。一个软件开发者开发的客户/服务器应用程序不会被束定于某个特定的数据库之上。ODBC可以为不同的数据库提供相应的驱动程序,是一种公认的关系数据源的接口界面。它快而轻并且提供统一接口的界面,ODBC对任何数据源都未作优化。    ODBC API:数据库厂商为程序设计者提供的直接访问数据库的一组函数。注重:这里要指出的是,虽然ODBC API提供了很多很方便

12、而且强大的功能。但是通常来说ODBC API都比较难学,而且使用很轻易出错。虽然答应用ODBC API来操作ODBC句柄,但还是要小心,假如不正确地使用ODBC API,可能会导致不可预知的错误。例如,假如使用ODBC API代码来关闭连接或释放这些ODBC句柄中的任何一个,那么RemoteData控件或RDO的行为将是不可预知的。保存ODBC句柄以供备用也是没有意义的,因为它们是可变的。                 &#

13、160;                          ODBC Direct:是一种基于DAO对象的新的DAO模式,其方法和属性与RDO功能相同。使用在有DAO代码存在的场合,可用来访问远程数据源。    OLE DB: 是COM模型的数据库接口。是一种底层数据访问界面接口。是用于第三方驱动程

14、序商家开发输出数据源到ADO技术的应用程序或用于C+的开发者开发定制的数据库组件。它能够处理任何类型的数据。OLE DB向应用程序提供一个统一的数据访问方法,而不考虑它们的格式和存储方法。在实际应用中,这种多样性意味着可以访问驻留在电子数据表、文本文件甚至邮件服务器,诸如 Microsoft Exchang中的数据。OLE DB不能被VB直接调用。    RDC(RemoteData Control):远程数据访问控件。是一种对RDO数据绑定的控件。可以输出特定的结果集到数据源控件。    RDO(Remote D

15、ata Objects):远程数据对象。是一个到ODBC的、面向对象的数据访问接口,远程数据对象和集合为使用代码来创建和操作一个远程ODBC数据库系统的各个部件提供了一个框架。对象和集合都具有描述数据库的各个部件特征的属性以及用来操作这些部件的方法。可以在对象和集合之间建立起关系,这些关系就代表了数据库系统的逻辑结构。它同易于使用的DAO style组合在一起,提供了1个接口,形式上展示出所有ODBC的底层功能和灵活性。RDO是ODBC API的一个浅层界面接口。是专为访问远程ODBC关系数据源而设计的。尽管RDO在访问Jet或ISAM数据库方面受到限制,而且它只能通过现存的ODBC驱动程序来

16、访问关系数据库。但是,RDO已被证实是许多SQL Server、Oracle以及其他大型关系数据库开发者经常选用的最佳接口。RDO提供了用来访问存储过程和复杂结果集的更多和更复杂的对象、属性以及方法。                                 &#

17、160;          VBSQL:是Visual Basic结构化查询语言。是一种基于API的接口方法,几乎与C的DB-Library API相同。VBSQL只支持微软的SQL Server。VBSQL快而且轻但不支持对象界面。3性能比较及应用说明    用VB开发基于SQL Server的数据库系统,以上几种访问SQL Server的方法各有各的特点。DAOs方法是基于对象的,因而便于使用,但是它从Visual Basic到SQL Server的最

18、慢的方式。ODBC API和VBSQL方法从本质上讲是基于程序的。ODBC API方法通用性好,答应最强的互操作性,编程简单,但速度慢于VBSQL方法。VBSQL方法通过VBSQL控件,提供了重要的SQL Server前端应用程序所需的灵活性、强大功能和良好性能。它具有真正的事件驱动及错误处理能力,完全支持异步处理、游标和计算列等。这些都是VBSQL方法超出其它方法的优势,但其编程稍复杂。RDO是位于ODBC API之上的一个对象模型层,它依靠ODBC API、ODBC驱动程序以及后端数据库引擎来实现,用RDO所需的程序短小(约250 KB)、快速。RDO具备基本的ODBC处理方法,可直接执行

19、大多数ODBC API函数,RDO包含在VB 4.0/VB 5.0企业版中,由MSRDO32.DLL动态连接库来实现。RDO是综合了DAO/Jet、VBSQL/DBLib和ODBC的优点的对象模型,包含ODBC API应用层,设计为在后台(服务器端)有数据库存在的前提下运行,是针对SQL Server和Oracle而非凡设计的。RDO的优势在于它完全被集成在VB之中,可直接访问SQL Server存储过程、完全支持T-SQL、T-SQL调试集成在开发环境中、Visual Database Tools的集成化等。但微软已公布今后不再对VBSQL/DBLib进行升级,而ODBC API函数一般的编

20、程方式也不为人们所喜爱,RDO的应用将逐渐减少。至于实际使用哪一种接口方式,在很大程度上依靠于用户的应用程序的具体情况而定。                                       

21、0;    4 VB访问数据库的原则    应用VB访问数据库时,要具体问题具体分析,根据具体的环境、条件、要求而采用适当的方案,就应注重以下几个原则:    4.1 代码的重用和运行的效率    例如:通过使用ODBC数据源连接数据库的方法,可在变换多种数据库类型的情况下,而不用频繁修改代码。用VBSQL通过DB-Library就做不到。而ODBC接口并不是VB访问数据库运行效率最高的方法。同样,同是使用ODBC接口的ADO的效率要高

22、于RDO。    4.2 实现的简便性,易维护性    假如一种方法实现起来很复杂,工程的开发必然造成人力物力的浪费,同时这样设计出来的应用程序只会支持起来更复杂或维护时更困难。例如:本地需要访问ISAM 或Jet 类型数据源,那么就使用DAO/Jet,而没有必要使用通过ODBC的方法。RDC实现起来要较RDO更轻易。    4.3 安全性原则    这一条应根据环境和条件决定。例如局域网的网络安全性要好于广域网因而可直接利用数据控件如

23、RDC,这样实现起来方便快捷,而广域网需要大量的错误捕捉,如用RDC就不如用RDO易控制错误。    5 结束语    在数据访问接口中DAO最适用于单系统应用程序或小范围本地分布使用,而RDO已被证实是许多SQL Server、Oracle以及其它大型关系数据库开发者经常选用的最佳接口。ADO是DAORDO的后继产物。ADO 2.0在功能上与RDO更相似,而且一般来说,在这2种模型之间有一种相似的映射关系。ADO“扩展”了DAO和RDO所使用的对象模型,这意味着它包含较少的对象、更多的属性、方法和参数,以及事件。

24、                                            数据库接口中最新的是ADO,它是比RDO和DAO更加简单、更加灵活的对象模型。对于新工程,应该使用ADO作为数据访问接口。    不过,ADO并不是自动和现存的数据访问应用程序代码兼容的。当ADO封装DAO和RDO的功能性的时候,必须将许多语言要素转换为ADO语法。在某些情况下,这将意味着现存代码的某

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论