Sdílet prostřednictvím


Určit, jaký použít typ přistupujícího objektu

Datové typy na sadu řádků můžete určit při kompilaci nebo za běhu.

Pokud potřebujete určit datové typy při kompilaci, použijte statický přistupující objekt (například CAccessor). Datové typy můžete určit ručně nebo pomocí průvodce příjemce knihovny ATL technologie OLE DB.

Pokud potřebujete určit datové typy za běhu, použijte dynamický (CDynamicAccessor nebo jeho podřízené členy) nebo ruční přistupující objekt (CManualAccessor). V těchto případech můžete volat GetColumnInfo na sadu řádků, aby vrátila informace o vazbách sloupců, ze kterých můžete určit typy.

V následující tabulce jsou uvedeny typy přistupujících objektů, které jsou poskytované v šablonách příjemce. Každý přistupující objekt má své výhody i nevýhody. V závislosti na situaci by měl jeden typ přistupujícího objektu vyhovovat vašim potřebám.

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

Vazba

Parametr

Comment (Komentář)

CAccessor

Vytvoří uživatelský záznam s makry COLUMN_ENTRY. Makra vytváří vazbu datového člene v záznamu na přistupující objekt. Poté, co je vytvořena sada řádků, sloupce nemohou být nevázané.

Ano, pomocí položky makra PARAM_MAP. Pokud je jednou vázána, parametry nemohou být nevázané.

Nejrychlejší přistupující objekt z důvodu malého množství kódu.

CDynamicAccessor

Automaticky.

Ne.

Je užitečný, pokud neznáte typ dat v sadě řádků.

CDynamicParameterAccessor

Automaticky, ale může být přepsána.

Ano, pokud zprostředkovatel podporuje ICommandWithParameters. Parametry jsou vázány automaticky.

Pomalejší než CDynamicAccessor, ale užitečný pro volání obecných uložených procedur.

CDynamicStringAccessor[A,W]

Automaticky.

Ne.

Načte data z úložiště dat jako řetězecová data.

CManualAccessor

Ručně pomocí AddBindEntry.

Ručně pomocí AddParameterEntry.

Velmi rychlý; parametry a sloupce vázány pouze jednou. Můžete určit typ dat, který chcete použít. (Viz ukázka příkladu DBVIEWER.) Vyžaduje více kódu než CDynamicAccessor nebo CAccessor. Je to spíše jako přímé volání technologie OLE DB.

CXMLAccessor

Automaticky.

Ne.

Načte data z úložiště dat jako řetězecová data a zformátuje je jako data obsahující značky jazyka XML.

Viz také

Koncepty

Použití přístupových objektů