Sdílet prostřednictvím


Snímek

Snímek je sada záznamů, která odráží statické zobrazení dat, protože existovalo v době vytvoření snímku. Když snímek otevřete a přesunete se do všech záznamů, sada záznamů, které obsahuje, a jejich hodnoty se nezmění, dokud znovu neskonstruujete snímek voláním Requery.

Poznámka:

Toto téma se vztahuje na třídy MFC ODBC. Pokud používáte třídy MFC DAO místo tříd ODBC MFC, přečtěte si téma CDaoRecordset::Open popis sad záznamů typu snímku.

Pomocí databázových tříd můžete vytvářet aktualizovatelné snímky nebo snímky jen pro čtení. Na rozdíl od dynasetu neodráží aktualizovatelný snímek změny hodnot záznamů provedených jinými uživateli, ale odráží aktualizace a odstranění provedené programem. Záznamy přidané do snímku se do snímku nezobrazí, dokud nezavoláte Requery.

Tip

Snímek je statický kurzor ODBC. Statické kurzory ve skutečnosti nezískute řádek dat, dokud se posunete na tento záznam. Pokud chcete zajistit, aby se všechny záznamy okamžitě načetly, můžete přejít na konec sady záznamů a pak přejít na první záznam, který chcete zobrazit. Všimněte si však, že posouvání na konec znamená větší režii a může snížit výkon.

Snímky jsou nejužitečnější, když potřebujete, aby data zůstala pevná během operací, jako když generujete sestavu nebo provádíte výpočty. I tak se zdroj dat může výrazně lišit od snímku, takže ho možná budete chtít občas znovu sestavit.

Podpora snímků je založená na knihovně kurzorů ODBC, která poskytuje statické kurzory a umístěné aktualizace (potřebné k aktualizaci) pro jakýkoli ovladač úrovně 1. Knihovna DLL kurzoru musí být načtena do paměti pro tuto podporu. Při vytváření objektu CDatabase a volání jeho OpenEx členské funkce je nutné zadat CDatabase::useCursorLib možnost dwOptions parametru. Pokud voláte členská Open funkce, knihovna kurzoru se ve výchozím nastavení načte. Pokud místo snímků používáte dynamické sady, nechcete knihovnu kurzorů načíst.

Snímky jsou k dispozici pouze v případě, že byla načtena knihovna kurzorů ODBC při CDatabase vytvoření objektu nebo ovladač ODBC, který používáte, podporuje statické kurzory.

Poznámka:

U některých ovladačů ODBC nemusí být snímky (statické kurzory) aktualizovatelné. V dokumentaci ovladače najdete podporované typy kurzorů a podporované typy souběžnosti. Pokud chcete zaručit aktualizovatelné snímky, nezapomeňte při vytváření objektu načíst knihovnu kurzorů CDatabase do paměti. Další informace naleznete v tématu ODBC: Knihovna kurzorů ODBC.

Poznámka:

Pokud chcete použít snímky i dynamické sady, musíte je založit na dvou různých CDatabase objektech (dvě různá připojení).

Další informace o sdílených snímcích vlastností se všemi sadami záznamů naleznete v tématu Sada záznamů (ODBC). Další informace o rozhraní ODBC a snímcích, včetně knihovny kurzorů ODBC, naleznete v tématu ODBC.

Viz také

Open Database Connectivity (ODBC)