CDaoDatabase::Close

调用该成员函数从数据库断开连接并关闭任何打开的记录集、tabledefs和querydefs与该数据库。

virtual void Close( );

备注

在调用此成员函数之前,最好关闭这些对象。 关闭 CDaoDatabase 对象从在关联的 工作区的数据库集合中移除它。 由于 Close 不销毁 CDaoDatabase 对象,则可以通过打开同一数据库或其他数据库重新使用对象。

警告

调用 更新 成员函数(如果存在挂起的编辑),并在整个 Close 成员函数打开记录集对象,在关闭一个数据库之前。如果退出声明 CDaoRecordsetCDaoDatabase 对象堆栈上的函数,数据库已关闭,所有未保存的更改将丢失,回滚所有挂起的事务,因此,任何挂起编辑对数据丢失。

警告

如果尝试关闭数据库对象,而所有记录集对象处于打开状态时,或者,如果您尝试关闭工作区对象,同时属于该特定工作区的任何数据库对象处于打开状态时,这些记录集对象是关闭和所有挂起更新或编辑将被回滚。如果尝试关闭工作区对象,同时属于它的所有数据库对象处于打开状态时,操作关闭属于该特定工作区对象的所有数据库对象,可能会导致是unclosed记录集对象以关闭。如果不关闭数据库对象,MFC报告断言失败调试版本。

在函数范围外,如果数据库对象定义,因此,您退出该函数,而无需关闭它,数据库对象仍保持打开状态直到显式关闭或定义它的模块超出范围。

要求

Header: afxdao.h

请参见

参考

CDaoDatabase选件类

层次结构图

CDaoDatabase::Open

CDaoRecordset::Close

CDaoWorkspace::Close

CDaoQueryDef::Close

CDaoTableDef::Close