CRowsetImpl 类

提供标准 OLE DB 行集合实现,而无需许多实现接口多重继承。

template <
   class T,
   class Storage,
   class CreatorClass,
   class ArrayType = CAtlArray<Storage>, 
   class RowClass = CSimpleRow, 
   class RowsetInterface = IRowsetImpl < T, IRowset > 
>
class CRowsetImpl :  
   public CComObjectRootEx<CreatorClass::_ThreadModel>, 
   public CRowsetBaseImpl<T, Storage, ArrayType, RowsetInterface>, 
   public IRowsetInfoImpl<T, CreatorClass::_PropClass>

参数

  • T
    CRowsetImpl派生的用户的类。

  • Storage
    用户记录类。

  • CreatorClass
    包含行集合属性的类;典型命令。

  • ArrayType
    为行集合的数据存储的类。此参数默认为 CAtlArray,但是,它可以是支持所需功能的任何类。

成员

xzwszaah.collapse_all(zh-cn,VS.110).gif方法

NameFromDBID

DBID 和复制提取字符串将的 bstr 。

SetCommandText

对两个字符串验证和存储 DBID时 (m_strCommandTextm_strIndexText)。

xzwszaah.collapse_all(zh-cn,VS.110).gif可重写的方法

GetColumnInfo

检索特定的客户端请求的列信息。

GetCommandFromID

检查或两个参数是否包含字符串值; 如果是这样,复制字符串值写到数据成员 m_strCommandTextm_strIndexText

ValidateCommandID

检查或两 DBID的是否包含字符串值; 如果是这样,将它们复制到其数据成员 m_strCommandTextm_strIndexText

xzwszaah.collapse_all(zh-cn,VS.110).gif数据成员

m_rgRowData

默认情况下,在用户记录模板参数 templatizes 到 CRowsetImplCAtlArray 。另一种数组类型类可以通过更改 ArrayType 模板参数使用。 CRowsetImpl

m_strCommandText

包含行集合的初始命令。

m_strIndexText

包含行集合的初始索引。

备注

以静态向上转换的形式,CRowsetImpl 的重写。方法控件特定行集合将验证命令文本。可以通过对多个继承的实现接口来创建自己的 CRowsetImpl样式类。必须提供实现的唯一方法是 执行。根据类型的行集合,可以创建 creator 方法将需要 执行的不同签名。例如,如果您使用的是, CRowsetImpl- 实现的派生类架构行集合, 执行 方法将具有以下签名:

HRESULT Execute(LONG* pcRows, ULONG cRestrictions, const VARIANT* rgRestrictions)

如果创建 CRowsetImpl- 实现的派生类命令或会话的行集合, 执行 方法将具有以下签名:

HRESULT Execute(LONG* pcRows, DBPARAMS* pParams)

实现任何 CRowsetImpl派生的 执行 方法,您必须填写您的内部数据缓冲区 (m_rgRowData)。

要求

Header: atldb.h