CSession 类

表示单个数据库访问会话。

语法

class CSession

要求

标头: atldbcli.h

成员

方法

名称 描述
Abort 取消(终止)事务。
Close 关闭会话。
提交 提交事务。
GetTransactionInfo 返回有关事务的信息。
打开 为数据源对象打开新会话。
StartTransaction 开始此会话的新事务。

备注

一个或多个会话可以与每个提供程序连接(数据源)(其是由 CDataSource 对象表示的)关联。 若要为 CDataSource 创建新的 CSession,请调用 CSession::Open。 为了开始数据库事务,CSession 提供了 StartTransaction 方法。 事务启动后,可使用 Commit 方法提交它,或使用 Abort 方法取消它。

CSession::Abort

终止事务。

语法

HRESULT Abort(BOID* pboidReason = NULL,
   BOOL bRetaining = FALSE,
   BOOL bAsync = FALSE) const throw();

参数

请参阅“OLE DB 程序员参考”中的 ITransaction::Abort

返回值

标准 HRESULT。

CSession::Close

关闭由 CSession::Open 打开的会话。

语法

void Close() throw();

备注

释放 m_spOpenRowset 指针。

CSession::Commit

提交事务。

语法

HRESULT Commit(BOOL bRetaining = FALSE,
   DWORD grfTC = XACTTC_SYNC,
   DWORD grfRM = 0) const throw();

参数

请参阅“OLE DB 程序员参考”中的 ITransaction::Commit

返回值

标准 HRESULT。

注解

有关详细信息,请参阅 ITransaction::Commit

CSession::GetTransactionInfo

返回有关事务的信息。

语法

HRESULT GetTransactionInfo(XACTTRANSINFO* pInfo) const throw();

参数

请参阅“OLE DB 程序员参考”中的 ITransaction::GetTransactionInfo

返回值

标准 HRESULT。

备注

有关详细信息,请参阅“OLE DB 程序员参考”中的 ITransaction::GetTransactionInfo

CSession::Open

为数据源对象打开新会话。

语法

HRESULT Open(const CDataSource& ds,
   DBPROPSET *pPropSet = NULL,
   ULONG ulPropSets = 0) throw();

参数

ds
[in] 要为其打开会话的数据源。

pPropSet
[in] 指向 DBPROPSET 结构数组的指针,该结构包含要设置的属性和值。 请参阅 Windows SDK 中“OLE DB 程序员参考”中的属性集和属性组

ulPropSets
[in] 传入 pPropSet 参数的 DBPROPSET 结构的数目

返回值

标准 HRESULT。

备注

必须先使用 CDataSource::Open 打开数据源对象,然后再将其传递给 CSession::Open

CSession::StartTransaction

开始此会话的新事务。

语法

HRESULT StartTransaction(ISOLEVEL isoLevel = ISOLATIONLEVEL_READCOMMITTED,
   ULONG isoFlags = 0,
   ITransactionOptions* pOtherOptions = NULL,
   ULONG* pulTransactionLevel = NULL) const throw();

参数

请参阅“OLE DB 程序员参考”中的 ITransactionLocal::StartTransaction

返回值

标准 HRESULT。

注解

有关详细信息,请参阅“OLE DB 程序员参考”中的 ITransactionLocal::StartTransaction

另请参阅

CatDB
OLE DB 使用者模板
OLE DB 使用者模板参考