SQL: Přímá volání SQL (ODBC)
Toto téma vysvětluje:
Kdy použít přímá volání SQL
Poznámka:
Tyto informace platí pro třídy MFC ODBC. Pokud pracujete s třídami MFC DAO, přečtěte si téma Porovnání sql databázového stroje Microsoft Jet a ANSI SQL v nápovědě k rozhraní DAO.
Kdy volat SQL přímo
Chcete-li vytvářet nové tabulky, odstraňovat (odstraňovat) tabulky, měnit existující tabulky, vytvářet indexy a provádět další funkce SQL, které mění schéma zdroje dat (ODBC), musíte vydat příkaz SQL přímo zdroji dat pomocí jazyka DDL (Database Definition Language). Když použijete průvodce k vytvoření sady záznamů pro tabulku (v době návrhu), můžete zvolit sloupce tabulky, které mají být reprezentované v sadě záznamů. Nepovoluje se to sloupcům, které vy nebo jiný uživatel zdroje dat přidáte do tabulky později po kompilaci programu. Databázové třídy nepodporují DDL přímo, ale stále můžete napsat kód pro vytvoření vazby nového sloupce s vaší sadou záznamů dynamicky, a to za běhu. Informace o tom, jak tuto vazbu provést, naleznete v tématu Sada záznamů: Dynamické vazby datových sloupců (ODBC).
Pomocí samotného DBMS můžete změnit schéma nebo jiný nástroj, který umožňuje provádět funkce DDL. Můžete také použít volání funkce ODBC pro odesílání příkazů SQL, jako je volání předdefinovaného dotazu (uložená procedura), který nevrací záznamy.
Volání přímé funkce SQL
Volání SQL můžete přímo spustit pomocí objektu třídy CDatabase. Nastavte řetězec příkazu SQL (obvykle v a CString
) a předejte ho do členské funkce CDatabase::ExecuteSQL objektu CDatabase
. Pokud k odeslání příkazu SQL, který obvykle vrací záznamy, použijete volání funkce ODBC, budou záznamy ignorovány.