正在加载图片...
第6章MFC ODBC编程 为了简化开发人员编写数据库应用程序,VC++的在其基础类库(MFC)里对ODBC API 进行了封装,实现了一个面向对象的数据库编程接口,使VC+的数据库变得更加容易。 本章首先对MFC ODBC的概貌进行简要介绍,然后讲述利用MFC ODBC进行数据库 开发的技巧,最后将通过具体数据库开发实例,详细讲述通过MFC ODBC开发数据库应 用程序的方法和过程。 6.1了解MFC ODBC MFC是Microsoft Foundation Class(微软基础类库)的缩写,它的设计目标是简化开 发人员的工作。MFC使开发人员创建基于Windows的应用程序,而不必掌握下层的 Windows体系结构。由于数据库应用程序是管理数据的重要方面,Microsoft开发了ODBC API的封装程序,为ODBC编程提供了一个面向对象的方法。 MFC对ODBC的封装主要是开发了CDatabase类和CRecordSet类。 6.1.1 CDatabase类 CDatabase类用于应用程序建立同数据源的连接。CDatabase类包含一个m hdbc变量, 它代表了数据源的连接句柄。如果要建立CDatabase类的实例,应先调用该类的构造函数, 再调用Open函数,通过调用,初始化环境变量,并执行与数据源的连接。关闭数据源连 接的函数是Close。. CDatabase类提供了对数据库进行操作的函数,为了执行事务操作,CDatabase类提供 了BeginTrans函数,当全部数据都处理完成后,可以通过调用CommitTrans函数提交事务, 或者在特殊情况下通过调用Rollback函数将处理回退。 CDatabase类提供的函数可以用于返回数据源的特定信息,例如通过GetConnect函数 返回在使用函数Open连接数据源时的连接字符串,通过调用IsOpen函数返回当前的 CDatabase实例是否己经连接到数据源上,通过调用CanUpdate函数返回当前的CDatabase 实例是否是可更新的,通过调用CanTransact函数返回当前的CDatabase实例是否支持事务 操作,等等。 总之,CDatabase类为C++数据库开发人员提供了ODBC的面向对象的编程接口。 6.1.2 CRecordSet类 要实现对结果集的数据操作,就要用到CRecordSet类。CRecordSet类定义了从数据库 接收或者发送数据到数据库的成员变量,CRecordSet类定义的记录集可以是表的所有列, 也可以是其中的一列,这是由$QL语句决定的。 CRecordSet类的成员变量m hstmt代表了定义该记录集的SQL语句句柄,m nFields第 6 章 MFC ODBC 编程 为了简化开发人员编写数据库应用程序,VC++的在其基础类库(MFC)里对 ODBC API 进行了封装,实现了一个面向对象的数据库编程接口,使 VC++的数据库变得更加容易。 本章首先对 MFC ODBC 的概貌进行简要介绍,然后讲述利用 MFC ODBC 进行数据库 开发的技巧,最后将通过具体数据库开发实例,详细讲述通过 MFC ODBC 开发数据库应 用程序的方法和过程。 6.1 了解 MFC ODBC MFC 是 Microsoft Foundation Class(微软基础类库)的缩写,它的设计目标是简化开 发人员的工作。MFC 使开发人员创建基于 Windows 的应用程序,而不必掌握下层的 Windows 体系结构。由于数据库应用程序是管理数据的重要方面,Microsoft 开发了 ODBC API 的封装程序,为 ODBC 编程提供了一个面向对象的方法。 MFC 对 ODBC 的封装主要是开发了 CDatabase 类和 CRecordSet 类。 6.1.1 CDatabase 类 CDatabase 类用于应用程序建立同数据源的连接。CDatabase 类包含一个 m_hdbc 变量, 它代表了数据源的连接句柄。如果要建立 CDatabase 类的实例,应先调用该类的构造函数, 再调用 Open 函数,通过调用,初始化环境变量,并执行与数据源的连接。关闭数据源连 接的函数是 Close。 CDatabase 类提供了对数据库进行操作的函数,为了执行事务操作,CDatabase 类提供 了 BeginTrans 函数,当全部数据都处理完成后,可以通过调用 CommitTrans 函数提交事务, 或者在特殊情况下通过调用 Rollback 函数将处理回退。 CDatabase 类提供的函数可以用于返回数据源的特定信息,例如通过 GetConnect 函数 返回在使用函数 Open 连接数据源时的连接字符串,通过调用 IsOpen 函数返回当前的 CDatabase 实例是否已经连接到数据源上,通过调用 CanUpdate 函数返回当前的 CDatabase 实例是否是可更新的,通过调用 CanTransact 函数返回当前的 CDatabase 实例是否支持事务 操作,等等。 总之,CDatabase 类为 C++数据库开发人员提供了 ODBC 的面向对象的编程接口。 6.1.2 CRecordSet 类 要实现对结果集的数据操作,就要用到 CRecordSet 类。CRecordSet 类定义了从数据库 接收或者发送数据到数据库的成员变量,CRecordSet 类定义的记录集可以是表的所有列, 也可以是其中的一列,这是由 SQL 语句决定的。 CRecordSet 类的成员变量 m_hstmt 代表了定义该记录集的 SQL 语句句柄,m_nFields
向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有