Sdílet prostřednictvím


Přístupové objekty a sady řádků

K nastavení a načtení dat používají šablony technologie OLE DB přistupující objekt a sadu řádků, prostřednictvím třídy CAccessorRowset.Tato třída může zpracovávat víc přístupových objektů různých typů.

Typy přistupujícího objektu

Všechny přístupové objekty jsou odvozeny z CAccessorBase.CAccessorBase poskytuje i parametr a vazbu na sloupec.

Následující obrázek ukazuje typy přistupujícího objektu.

Třídy přistupujícího objektu

Typy přistupujícího objektu

  • CAccessor  Použijte tento přistupující objekt, pokud znáte zdrojovou databázi v době návrhu .CAccessor staticky váže záznam v databázi, která obsahuje vyrovnávací paměť, ke zdroji dat

  • CDynamicAccessor  Použijte tento přistupující objekt, pokud neznáte strukturu zdrojové databáze v době návrhu .CDynamicAccessor volá IColumnsInfo::GetColumnInfo pro získání informací databázového sloupce. Vytváří a spravuje přistupující objekt a vyrovnávací paměť.

  • CDynamicParameterAccessor   Požijte tento přistupující objekt ke zpracování neznámých typů příkazů.Když připravujete příkazy, CDynamicParameterAccessor může získat informace o parametru z rozhraní ICommandWithParameters, pokud zprostředkovatel podporuje ICommandWithParameters.

  • CDynamicStringAccessor, CDynamicStringAccessorA a CDynamicStringAccessorW   Tyto třídy použijte v případě, když nemáte žádné znalosti o schématu databáze.CDynamicStringAccessorA načítá data jako řetězce ANSI; CDynamicStringAccessorW načítá data jako řetězce Unicode.

  • CManualAccessor   S touto třídou můžete použít jakékoliv datové typy, které chcete, aby mohl zprostředkovatel převést.Zpracovává i výsledek sloupců a příkazy parametrů.

Následující tabulka shrnuje podporu v typech šablony přistupujícího objektu technologie OLE DB .

Typ přistupujícího objektu

Dynamické

Zpracovává parametry

Vyrovnávací paměť

Několik přístupových objektů

CAccessor

Ne

Ano

Uživatel

Ano

CDynamicAccessor

Ano

Ne

Šablony technologie OLE DB

Ne

CDynamicParameterAccessor

Ano

Ano

Šablony technologie OLE DB

Ne

CDynamicStringAccessor[A,W]

Ano

Ne

Šablony technologie OLE DB

Ne

CManualAccessor

Ano

Ano

Uživatel

Ano

Typy sady řádků

Šablony technologie OLE DB podporují tři typy sady řádků (viz předchozí obrázek): jednoduché sady řádků (implementované CRowset), hromadné sady řádků (implementované CBulkRowset) a pole sady řádků (implementované CArrayRowset).Jednoduché sady řádků zpracovávají načítání jednoduchých řádků, když je voláno MoveNext.Hromadné sady řádků mohou zpracovávat načítání několika řádků.Pole sady řádků jsou sady řádků, které mohou být přístupné pomocí syntaxe pole.

Následující obrázek ukazuje typy sady řádků.

Třídy sady řádků

RowsetType grafika

Schéma sady řádků nepřistupuje k datům v úložišti dat, ale místo toho přistupuje k informacím o úložišti dat, nazývaným metadata.Schéma sady řádků se obvykle používá v situacích, ve kterých není databázová struktura v době kompilace známá a musí být získána za běhu.

Viz také

Koncepty

OLE DB – šablony příjemce (C++)