Sada záznamů: Vytváření a uzavírání sad záznamů ( rozhraní ODBC)
Toto téma platí pro třídy knihovny MFC rozhraní ODBC.
Chcete-li použít sadu záznamů, sestavte objeky sady záznamů a poté zavolejte její členskou funkci Open pro spuštění dotazu sady záznamů a vybrání záznamů. Až dokončíte práci s objektem sady záznamů, uzavřete a zničte tento objekt.
Toto téma vysvětluje:
Kdy a jak vytvořit objekt sady záznamů.
Kdy a jak kvalifikovat chování sady záznamů jako parametrizování, filtrování, řazení nebo zamykání.
Kdy a jak zavřít objekt sady záznamů.
Vytváření sady záznamů za běhu
Dříve než budete moci vytvořit ve vašem programu objekty sady záznamů, budete muset napsat typickou aplikační specifikaci tříd sady záznamů. Další informace o tomto předběžném kroku naleznete Přidání příjemce rozhraní ODBC knihovny MFC.
Když potřebujete vybrat záznamy ze zdroje dat, otevřete dynamickou sadu nebo objekt snímku. Typ objektu, který chcete vytvořit, závisí na tom, co potřebujete provádět s daty ve vaší aplikaci a také na tom, jaký ovladač podporuje vaše rozhraní ODBC. Další informace naleznete v tématech Dynamická sada a Snímek.
Chcete-li otevřít sadu záznamů
Sestavte objekt vaší odvozené třídy CRecordset.
Můžete sestavit objekt na haldě nebo na bloku zásobníku funkce.
Volitelně upravte výchozí chování sady záznamů. Dostupná nastavení naleznete v tématu Nastavení možností sady záznamů.
Zavolejte objekt členské funkce Open.
V konstruktoru předejte ukazatel objektu CDatabase nebo předejte hodnotu NULL k použití dočasného objektu databáze, který architektura sestaví a otevře základní připojovací řetězec vrácený členskou funkcí GetDefaultConnect. Objekt CDatabase již může být připojen ke zdroji dat.
Volání členské funkce Open používá jazyk SQL k výběru záznamů ze zdoje dat. První vybraný záznam (pokud existuje) je aktuální záznam. Hodnoty polí tohoto záznamu jsou uloženy v objektu pole datových členů sady záznamů. Pokud nebyly vybrány žádné záznamy, vrátí členské funkce IsBOF a IsEOF hodnotu 0.
Ve vašem volání členské funkce Open, můžete provádět následující akce:
Určit, zda je sada záznamů dynamická sada nebo snímek. Sady záznamů, otevřené jako snímky, jsou nastaveny ve výchozím nastavení. Nebo můžete určit pouze dopředné sady záznamů, které umožňují pouze posouvání vpřed současně jednoho záznamu.
Ve výchozím nastavení používá sada záznamů výchozího typu uloženého ve třídě CRecordset datového členu m_nDefaultType. Průvodcem napsaný kód inicializuje m_nDefaultType na typ sady záznamů, který zvolíte v průvodci. Namísto přijetí tohoto výchozího nastavení, můžete použít jiný typ sady záznamů.
Zadejte řetězec, kterým chcete nahradit výchozí SQL dotaz SELECT, který vytváří sadu záznamů.
Určete, zda je sada záznamů pouze pro čtení nebo pouze pro připojení. Sady záznamů povolují úplnou změnu výchozího nastavení. Můžete se ale omezit pouze na přidávání nových záznamů nebo zakázaní jakýchkoliv změn.
Následující příklad ukazuje, jak otevřít pouze pro čtení objekt snímku třídy CStudentSet, třídy specifické pro aplikaci:
// Construct the snapshot object
CStudentSet rsStudent( NULL );
// Set options if desired, then open the recordset
if(!rsStudent.Open(CRecordset::snapshot, NULL, CRecordset::readOnly))
return FALSE;
// Use the snapshot to operate on its records...
Po zavolání funkce Open, použíjte členské funkce a datové členy objektu pro práci se záznamy. V některých případech můžete chtít znovu spustit dotaz nebo aktualizovat sadu záznamů k zahrnutí změn, k nimž došlo na zdroji dat. Více informací naleznete v tématu Sada záznamů: Opětovné spuštění dotazu sady záznamů (rozhraní ODBC).
Tip
Připojovací řetězec, který používáte během vývoje, nemusí být ten samý, který potřebují vaši eventuální uživatelé. V tomto ohledu naleznete možnosti na zobecňování vaši aplikace v tématu Zdroj dat: Spravovaná připojení (rozhraní ODBC).
Nastavení možností sady záznamů
Po sestavení objektu sady záznamů, ale před zavoláním funkce Open pro vybrání záznamů, můžete chtít nastavit některé možnosti řízení chování sady záznamů. Pro všechny sady záznamů můžete provádět následující akce:
Určit filtr pro omezení výběru záznamu.
Určit pořadí řazení záznamů.
Určit parametry pro vybrání záznamů, použitím informací získaných nebo vypočítaných za běhu.
Můžete také nastavit následující možnosti po splnění podmínek:
- Pokud je možné sadu záznamů aktualizovat a jsou podporovány možnosti uzamčení, určete metodu uzamčení používanou pro aktualizace.
Poznámka
Chcete-li ovlivnit výběr záznamů, musíte nastavit tyto možnosti před tím, než zavoláte členskou funkci Open.
Zavírání sady záznamů
Když skončíte s vaší sadou záznamů, musíte jí uvolnit a navrátit její paměť.
Chcete-li zavřít sadu záznamů
Zavolejte její členskou funkci Close.
Zničte objekt sady záznamů.
Pokud deklarujete objekt v bloku zásobníku funkce, je objekt automaticky zničen při opuštění rozsahu. V opačném případě použijte operátor delete.
Funkce Close uvolní popisovač HSTMT sady záznamů. Toto nezničí objekt jazyka C++.
Viz také
Koncepty
Sada záznamů: Procházení (ODBC)
Sada záznamů: Přidání, aktualizace a odstranění záznamů (ODBC)