CDatabase对象表示到数据源的连线,通过它可以运算元据源。
基本介绍
- 中文名:数据源的连线
- 外文名:CDatabase
- 功能:数据源操作
- 数据源:MicrosoftSQL Server
- 辅助:OpenEx成员函式
- 所需头档案:#include <afxdb.h>
CDatabase详解
数据源是位于一些资料库管理系统(DBMS)的数据的指定实例,包括MicrosoftSQLServer,MicrosoftAccess,BorlanddBASE和xBASE。在套用中可以同时使一个或多个CDatabase对象活动。
注意:
如果在处理数据访问对象(DAO)类而不是开放资料库连线(ODBC)类,可使用类CDaoDatabase。有关的更多信息,请参阅在线上文档“Visual C++程式设计师指南”中的“资料库主题(通用)”与“DAO和MFC”。
为使用CDatabase,构造一个CDatabase对象并调用它的OpenEx成员函式。这打开了一个连线。在接着构造CRecordset对象以操纵连线的数据源时,向CDatabase对象传递记录集构造程式指针。完成使用连线时调用Close成员函式并销毁CDatabase对象。Close关闭以前没有关闭的任何记录集。
Data Members
m_hdbc | Open Database Connectivity (ODBC) connection handle to a data source. Type HDBC. |
Construction
CDatabase | Constructs a CDatabase object. You must initialize the object by calling OpenEx or Open. |
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 the CDatabase object to a data source. |
IsOpen | Returns nonzero if the CDatabase object is currently connected to a data source. |
GetDatabaseName | Returns the name of the database currently in use. |
CanUpdate | Returns nonzero if the CDatabase object 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 recordset Open, AddNew, Edit, and Delete calls. |
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 the AddNew, Edit, Delete, and Update member functions of class CRecordset — on the connected data source. The data source must support transactions for BeginTrans to have any effect. |
BindParameters | Allows you to bind parameters before calling CDatabase::ExecuteSQL. |
CommitTrans | Completes a transaction begun by BeginTrans. 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 the BeginTrans call, 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 calling SetQueryTimeout. |