CDatabase

CObject
 └CDatabase

CDatabase对象表示到数据源的连接,通过它可以操作数据源。数据源是位于一些数据库管理系统(DBMS)的数据的指定实例,包括MicrosoftSQL Server,Microsoft Access,Borland dBASE和xBASE。在应用中可以同时使一个或多个CDatabase对象活动。
注意:
如果在处理数据访问对象(DAO)类而不是开放数据库连接(ODBC)类,可使用类CDaoDatabase。有关的更多信息,请参阅联机文档“Visual C++程序员指南”中的“数据库主题(通用)”与“DAO和MFC”。
为使用CDatabase,构造一个CDatabase对象并调用它的OpenEx成员函数。这打开了一个连接。在接着构造CRecordset对象以操纵连接的数据源时,向CDatabase对象传递记录集构造程序指针。完成使用连接时调用Close成员函数并销毁CDatabase对象。Close关闭以前没有关闭的任何记录集。
有关CDatabase的更多信息,请参阅联机文档“Visual C++程序员指南”中的“数据源(ODBC)”和“数据库主题(通用)”。
#include <afxdb.h>
请参阅:CRecordset


CDatabase类成员

数据成员
m_hdbc对数据源的开放数据库连接(ODBC)连接句柄。类型HDBC

构造函数
CDatabase构造一个CDatabase对象。必须通过调用OpenEx或Open初始化这个对象
Open建立到数据源的一个连接(通过ODBC驱动程序)
OpenEx建立到数据源的一个连接(通过ODBC驱动程序)
Close关闭数据源连接

数据库属性
GetConnect返回用于连接CDatabase对象和数据源的ODBC连接字符串
IsOpen如果CDatabase对象当前与数据源连接,则返回非零
GetDatabaseName返回当前使用的数据库名字
CanUpdate如果CDatabase可更新(不是只读的),则返回非零
CanTransact如果数据源支持事务,则返回非零
SetLoginTimeout设置数据源连接试图超时的秒数
SetQueryTimeout设置数据库查询操作超时的秒数。影响以后的所有记录集调用:Open,AddNew,Edit和Delete
GetBookmarkPersistence标识记录集对象上书签持久化操作
GetCursorCommitBehavior标识在打开的记录集对象上提交事务的效果
GetCursorRollbackBehavior标识在打开的记录集对象上回滚事务的效果

数据库操作
BeginTrans在连接的数据源上开始“事务”──类CRecordset的一系列可回滚的AddNew,Edit,Delete和Update成员函数调用。数据源必须支持事务才能使BeginTrans有效
BindParameters允许在调用CDatabase::ExecuteSQL前绑定参数
CommitTrans完成由从BeginTrans开始的事务。执行这个事务中改变数据源的命令
Rollback回滚当前事务期间所做变化,数据源返回到BeginTrans调用时定义的未改变的以前状况
Cancel取消第二个线程的异步操作或处理
ExecuteSQL执行一条SQL语句。不返回数据记录

数据库覆盖
OnSetOptions框架调用以设置标准连接选项。缺省实现设置查询超时值。可以通过调用SetQueryTimeout提前建立这些选项