Sdílet prostřednictvím


Odložené vyrovnávací paměti

Odložená vyrovnávací paměť je vyrovnávací paměť, jejíž hodnota se využívá v určitém okamžiku po jejím zadání ve volání funkce. Například SQLBindParameter slouží k přidružení nebo připojení (vázání) datové vyrovnávací paměti k parametru v příkazu SQL. Aplikace určuje počet parametrů a předá adresu, délku bajtu a typ vyrovnávací paměti. Ovladač uloží tyto informace, ale nezkoumá obsah vyrovnávací paměti. Později, když aplikace spustí příkaz, ovladač načte informace a použije je k načtení dat parametrů a jeho 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 naleznete v tématu Přidělování a uvolnění vyrovnávacích pamětí, dále v této části.

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
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