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,但可以是任何支援所需的功能的類別。
Members
方法
從字串中擷取 DBID ,並將它複製bstr中傳遞。 |
|
驗證並儲存 DBIDs 中的兩個字串 (m_strCommandText 和 m_strIndexText)。 |
可覆寫方法
擷取特定的用戶端要求的資料行資訊。 |
|
檢查以查看其中一個或兩個參數包含字串的值,且如果是的話,會將字串值複製到的資料成員 m_strCommandText 和 m_strIndexText。 |
|
請查看是否有任一或兩個會檢查 DBIDs 包含字串值,而如果是的話,貼附到其資料成員 m_strCommandText 和 m_strIndexText。 |
資料成員
根據預設, CAtlArray的 templatizes 上的使用者資料錄的樣板引數CRowsetImpl。 另一種陣列型別類別可以藉由變更用於ArrayType樣板引數至CRowsetImpl。 |
|
包含資料列集的初始的命令。 |
|
包含資料列集的起始索引。 |
備註
CRowsetImpl提供覆寫靜態 upcasts 的形式。 這些方法來控制在其中指定的資料列集將會驗證命令文字的方式。 您可以建立您自己CRowsetImpl-樣式讓您實作的介面多重繼承的類別。 唯一的方法,您必須提供實作是 Execute。 建立者方法取決於您建立何種類型的資料列集,會預期不同的簽章的 Execute。 比方說,如果您使用CRowsetImpl-衍生的類別來實作一個結構描述資料列集, Execute 方法會有下列簽章:
HRESULT Execute(LONG* pcRows, ULONG cRestrictions, const VARIANT* rgRestrictions)
如果您要建立CRowsetImpl-衍生的類別來實作一個命令或工作階段的資料列集, Execute 方法會有下列簽章:
HRESULT Execute(LONG* pcRows, DBPARAMS* pParams)
若要實作的任何CRowsetImpl-衍生 Execute 方法,您必須填入您的內部資料緩衝區 (m_rgRowData)。
需求
標頭: atldb.h