Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Příkaz je nejlépe pochopitelný jako SQL příkaz, například SELECT * FROM Employee. Příkaz je však více než jen příkaz SQL – skládá se ze všech informací spojených s tímto příkazem SQL, například všech sad výsledků vytvořených příkazem a parametry použitými při provádění příkazu. Příkaz nemusí mít ani příkaz SQL definovaný aplikací. Například při spuštění funkce katalogu, například SQLTables na příkazu, spustí předdefinovaný příkaz SQL, který vrátí seznam názvů tabulek.
Každý SQL příkaz je identifikován pomocí popisovače příkazu. Příkaz je přidružený k jednomu připojení a pro toto připojení může existovat více příkazů. Některé ovladače omezují počet aktivních příkazů, které podporují; možnost SQL_MAX_CONCURRENT_ACTIVITIES v nástroji SQLGetInfo určuje, kolik aktivních příkazů ovladač podporuje v jednom připojení. Příkaz je definován tak, aby byl aktivní , pokud obsahuje výsledky čekající na vyřízení, kde výsledky jsou buď sada výsledků, nebo počet řádků ovlivněných příkazem INSERT, UPDATE nebo DELETE nebo data se odesílají s více voláními SQLPutData.
V rámci kódu, který implementuje rozhraní ODBC (Správce ovladačů nebo ovladač), identifikuje popisovač příkazu strukturu, která obsahuje informace o příkazech, například:
Stav tvrzení
Aktuální diagnostika na úrovni jednotlivých příkazů
Adresy proměnných aplikace, které jsou vázány na parametry příkazu a sloupce sady výsledků
Aktuální nastavení každého atributu příkazu
Popisovače příkazů se používají ve většině funkcí ODBC. Zejména se používají ve funkcích k vytvoření vazby parametrů a sloupců sady výsledků (SQLBindParameter a SQLBindCol), přípravy a provádění příkazů (SQLPrepare, SQLExecute a SQLExecDirect), načítání metadat (SQLColAttribute a SQLDescribeCol), načítání výsledků (SQLFetch) a načítání diagnostiky (SQLGetDiagField a SQLGetDiagRec). Používají se také ve funkcích katalogu (SQLColumns, SQLTables atd.) a řadě dalších funkcí.
Popisovače příkazů jsou přiděleny pomocí SQLAllocHandle a uvolněny pomocí SQLFreeHandle.