10.3 MFC DAO数据库编程
DAO(Database Access Object,数据访问对象)使用Microsoft Jet数据库引擎来访问数据库。MFC DAO封装了DAO的大部分功能,可以很方便地使用Microsoft Jet引擎访问数据库。本节就来介绍如何使用MFC DAO开发数据库应用程序。
10.3.1 MFC DAO概述
DAO适用于单系统应用程序或小范围本地分布使用。DAO提供一种通过程序代码创建和操作数据库的机制,多个DAO对象构成一个体系结构,在这个体系结构中,各个DAO对象协同工作。
MFC的DAO类和ODBC类有很多相似之处,主要有两点:
1) 都支持对各种ODBC数据源的访问。
2) 提供了功能相似的MFC类。例如DAO的CDaoDatabase类对应于ODBC的CDatabase类,DAO的CDaoRecordset类对应于ODBC的CRecordset类等。这些类所提供的程序函数大部分也相同。
尽管两者非常相似,但访问数据库的机制完全不同。ODBC的工作依赖于数据库制造商提供的驱动程序,而DAO直接利用Microsoft Jet引擎提供的数据库访问对象集进行工作
10.3.2 实例:使用MFC DAO访问数据库
本节设计的实例实现使用MFC DAO访问数据库的基本操作,实例的界面与10.2.2小节的实例完全一样,如图10-10所示。
实例同样实现了对数据库的基本操作:添加、修改、删除和遍历。与ODBC实例中不同的是,ODBC使用过程中添加了一个从CRecordset派生而来的CBook类,负责成员数据与数据表字段的关联,而本实例则是直接使用