MFC ODBC编程

微软为了简化用户编写数据库应用程序,在MFC中将ODBC API的接口封装起来,这就是MFC ODBC,实现了面向对象的数据库编程接口。

MFCODBC API的封装主要是开发了CDataBase类和CRecordSet类。

CDatabase类主要是为了建立应用程序和数据源的连接功能。

CRecordSet类主要是对数据集的操作。

记录的查询:主要使用CRecordSet类的Open()方法和Requery()成员函数。在使用CRecordSet的类对象之前,必须使用CRecordSet的成员函数Open()来获得有效的记录集。一旦使用过Open()函数,再次查询时使用Requery()函数就可以了。

记录的添加:只用AddNew()函数,不过必须保证在数据库是在允许添加的模式打开的。

记录的删除:调用Delete()函数完成,在使用完Delete()函数之后不用调用Update()函数了。

记录的修改:调用Edit()函数完成,在使用过Edit()函数之后需要调用Update()函数将修改结果存入数据库。

撤销数据库更新操作:如果在增加、删除或者编辑记录之后,想撤销原来的操作,应该在Update()函数之前使用Move()函数。CRecordSet::Move(AFX_MOVE_REFRESH); 该函数用于撤消增加或修改模式,并恢复在增加或修改模式之前的当前记录。其中参 AFX_MOVE_REFRESH的值为零。

直接执行SQL操作:这个需要调用CDatabase类的ExecuteSQL()函数。需要注意的是,由于不同DBMS提供的数据操作语句不尽相同,直接执行SQL语句可能会破坏软件的DBMS无关性,因此在应用中应当慎用此类操作。

MFC ODBC的数据库操作过程:

首先,应用程序应该先建立与ODBC数据源的连接,这个过程是使用CDatabase类的Open()函数实现的,然后CDatabase类的指针将被传递到CRecordSet类的构造函数中,使CRecordSet对象与原来的数据源结合起来。完成了数据源的连接之后,大量的操作集中在数据集之上。完成操作之后,先关闭所有记录集的连接,然后关闭数据源的连接。

posted on 2009-04-16 10:11  Eric Tsao  阅读(2020)  评论(0编辑  收藏  举报

导航