CDatabase
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关闭以前没有关闭的任何记录集。
Data Membersm_hdbc
Open Database Connectivity (ODBC) connection handle to a data source. TypeHDBC.
Construction
CDatabase
Constructs aCDatabaseobject. You must initialize the object by callingOpenExorOpen.
Open
Establishes a connection to a data source (through an ODBC driver).
OpenEx
Establishes a connection to a data source (through an ODBC driver).
Close
Closes the data source connection.
Database Attributes
GetConnect
Returns the ODBC connect string used to connect theCDatabaseobject to a data source.
IsOpen
Returns nonzero if theCDatabaseobject is currently connected to a data source.
GetDatabaseName
Returns the name of the database currently in use.
CanUpdate
Returns nonzero if theCDatabaseobject is updatable (not read-only).
CanTransact
Returns nonzero if the data source supports transactions.
SetLoginTimeout
Sets the number of seconds after which a data source connection attempt will time out.
SetQueryTimeout
Sets the number of seconds after which database query operations will time out. Affects all subsequent recordsetOpen,AddNew,Edit, andDeletecalls.
GetBookmarkPersistence
Identifies the operations through which bookmarks persist on recordset objects.
GetCursorCommitBehavior
Identifies the effect of committing a transaction on an open recordset object.
GetCursorRollbackBehavior
Identifies the effect of rolling back a transaction on an open recordset object.
Database Operations
BeginTrans
Starts a “transaction” — a series of reversible calls to theAddNew,Edit,Delete, andUpdatemember functions of classCRecordset— on the connected data source. The data source must support transactions forBeginTransto have any effect.
BindParameters
Allows you to bind parameters before callingCDatabase::ExecuteSQL.
CommitTrans
Completes a transaction begun byBeginTrans. Commands in the transaction that alter the data source are carried out.
Rollback
Reverses changes made during the current transaction. The data source returns to its previous state, as defined at theBeginTranscall, unaltered.
Cancel
Cancels an asynchronous operation or a process from a second thread.
ExecuteSQL
Executes an SQL statement. No data records are returned.
所需头文件:#include <afxdb.h>
Database Overridables
OnSetOptions
Called by the framework to set standard connection options. The default implementation sets the query timeout value. You can establish these options ahead of time by callingSetQueryTimeout.