Sdílet prostřednictvím


Odložené vyrovnávací paměti

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