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.
Odložená vyrovnávací paměť je ta, jejíž hodnota se použije v nějakém okamžiku po jejím zadání ve volání funkce. Například pomocí SQLBindParameter přidružíte nebo svážete vyrovnávací paměť dat s parametrem v příkazu SQL. Zadáte číslo parametru a předáte adresu, délku bajtu a typ vyrovnávací paměti. Ovladač uloží tyto informace, ale nezkoumá obsah vyrovnávací paměti. Později při spuštění příkazu ovladač načte informace a použije je k načtení dat parametrů a jejich odeslání do zdroje dat. Proto je zadání dat do vyrovnávací paměti odloženo. Vzhledem k tomu, že odložené vyrovnávací paměti jsou zadány v jedné funkci a používají se v jiné, jedná se o chybu programování aplikace, která uvolní odloženou vyrovnávací paměť, zatímco ovladač stále očekává, že existuje. Další informace najdete v tématu Přidělování a uvolnění vyrovnávacích pamětí dále v této části.
Typy odložené vyrovnávací paměti
Vstupní i výstupní vyrovnávací paměti lze odložit. Následující tabulka shrnuje použití odložených vyrovnávacích pamětí. Všimněte si, že odložené vyrovnávací paměti vázané na sloupce sady výsledků jsou zadány pomocí sqlBindCol a odložené vyrovnávací paměti vázané na parametry příkazu SQL jsou zadány pomocí SQLBindParameter.
| Použití vyrovnávací paměti | Typ | Specifikováno pomocí | Používáno kým |
|---|---|---|---|
| Odesílání dat pro vstupní parametry | Odložený vstup | Sqlbindparameter |
Sqlexecute Sqlexecdirect |
| Odesílání dat pro aktualizaci nebo vložení řádku do sady výsledků | Odložený vstup | Sqlbindcol |
Sqlsetpos SQLBulkOperations |
| Vrácení dat pro výstupní a vstupní/výstupní parametry | Odložený výstup | Sqlbindparameter |
Sqlexecute Sqlexecdirect |
| Vrácení dat sady výsledků | Odložený výstup | Sqlbindcol |
SqlFetch SQLFetchScroll SQLSetPos |