登录注册
上海交通大学论坛 > 数据库 > 浏览当前帖子 手机版 关闭左侧栏
用VC开发数据库(一)
返回本版】  【发表帖子】  【回复帖子 浏览量  4599      回帖数 0
流云    等级  

楼主 发表于  2011/10/16 10:30:56    编 辑   



1、 概述 
1、1 Visual C++开发数据库技术的特点 
Visual C++提供了多种多样的数据库访问技术——ODBC API、MFC ODBC、DAO、OLE DB、 
ADO等。这些技术各有自己的特点,它们提供了简单、灵活、访问速度快、可扩展性好的 
开发技术。 
简单性 
Visual C++中提供了MFC类库、ATL模板类以及AppWizard、ClassWizard等一系列的Wiza 
rd工具用于帮助用户快速的建立自己的应用程序,大大简化了应用程序的设计。使用这 
些技术,可以使开发者编写很少的代码或不需编写代码就可以开发一个数据库应用程序 
。 
灵活性 
Visual C++提供的开发环境可以使开发者根据自己的需要设计应用程序的界面和功能, 
而且,Visual C++提供了丰富的类库和方法,可以使开发者根据自己的应用特点进行选 
择。 
访问速度快 
为了解决ODBC开发的数据库应用程序访问数据库的速度慢的问题,Visual C++提供了新 
的访问技术——OLE DB和ADO,OLE DB和ADO都是基于COM接口的技术,使用这种技术可以 
直接对数据库的驱动程序进行访问,这大大提供了访问速度。 
可扩展性 
Visual C++提供了OLE技术和ActiveX技术,这种技术可以增强应用程序的能力。使用OL 
E技术和ActiveX技术可以使开发者利用Visual C++中提供的各种组件、控件以及第三方 
开发者提供的组件来创建自己的程序,从而实现应用程序的组件化。使用这种技术可以 
使应用程序具有良好的可扩展性。 
访问不同种类数据源 
传统的ODBC技术只能访问关系型数据库,在Visual C++中,提供了OLE DB访问技术,不 
仅可以访问关系型数据库,还可以访问非关系型数据库。 
1、2 Visual C++开发数据库技术 
Visual C++提供了多种访问数据库的技术,如下所示: 
ODBC(Open DataBase Connectivity) 
MFC ODBC(Microsoft Foundation Classes ODBC) 
DAO (Data Access Object) 
OLE DB(Object Link and Embedding DataBase) 
ADO(ActiveX Data Object) 
这些技术各有自己的特点,总结如下: 
ODBC 
ODBC是客户应用程序访问关系数据库时提供的一个统一的接口,对于不同的数据库,OD 
BC提供了一套统一的API,使应用程序可以应用所提供的API来访问任何提供了ODBC驱动 
程序的数据库。而且,ODBC已经成为一种标准,所以,目前所有的关系数据库都提供了 
ODBC驱动程序,这使ODBC的应用非常广泛,基本上可用于所有的关系数据库。 
但由于ODBC只能用于关系数据库,使得利用ODBC很难访问对象数据库及其它非关系数据 
库。 
由于ODBC是一种底层的访问技术,因些,ODBC API可以使客户应用程序能够从底层设置 
和控制数据库,完成一些高层数据库技术无法完成的功能。 
MFC ODBC 
由于直接使用ODBC API编写应用程序要编制大量代码,在Visual C++中提供了MFC ODBC 
类,封装了ODBC API,这使得利用MFC来创建ODBC的应用程序非常简便。 
DAO 
DAO提供了一种通过程序代码创建和操纵数据库的机制。多个DAO构成一个体系结构,在 
这个结构中,各个DAO对象协同工作。MFC DAO是微软提供的用于访问Microsoft Jet数据 
库文件(*.mdb)的强有力的数据库开发工具,它通过DAO的封装,向程序员提供了DAO丰富 
的操作数据库手段。 
OLE DB 
OLE DB是Visual C++开发数据库应用中提供的新技术,它基于COM接口。因此,OLE DB对 
所有的文件系统包括关系数据库和非关系数据库都提供了统一的接口。这些特性使得OL 
E DB技术比传统的数据库访问技术更加优越。 
与ODBC技术相似,OLE DB属于数据库访问技术中的底层接口。 
直接使用OLE DB来设计数据库应用程序需要大量的代码。在VC中提供了ATL模板,用于设 
计OLE DB数据应用程序和数据提供程序。 
ADO 
ADO技术是基于OLE DB的访问接口,它继承了OLE DB技术的优点,并且,ADO对OLE DB的 
接口作了封装,定义了ADO对象,使程序开发得到简化,ADO技术属于数据库访问的高层 
接口。 
1
表情
所有内容均为会员自愿发表,并不代表本站立场.
论坛帮助 会员认证删帖申请 联系我们