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。