Sdílet prostřednictvím


Odložená pole

Hodnoty odložených polí se při jejich nastavení nepoužívají, ale ovladač uloží adresy proměnných pro odložený účinek. Pro popisovač parametru aplikace ovladač používá obsah proměnných v době volání SQLExecDirect nebo SQLExecute. Pro popisovač řádku aplikace používá ovladač obsah proměnných v době načtení.

Následující pole jsou odložena:

  • Pole SQL_DESC_DATA_PTR a SQL_DESC_INDICATOR_PTR v záznamu deskriptoru.

  • Pole SQL_DESC_OCTET_LENGTH_PTR záznamu popisovače aplikace.

  • V případě víceřádkového načtení pole SQL_DESC_ARRAY_STATUS_PTR a SQL_DESC_ROWS_PROCESSED_PTR záhlaví deskriptoru.

Při přidělení popisovače mají odložená pole každého záznamu popisovače zpočátku hodnotu null. Význam hodnoty null je následující:

  • Pokud má SQL_DESC_ARRAY_STATUS_PTR hodnotu null, nepodaří se vícenásobné načtení vrátit tuto komponentu diagnostických informací pro jednotlivé řádky.

  • Pokud SQL_DESC_DATA_PTR má hodnotu null, záznam je nevázaný.

  • Pokud má pole SQL_DESC_OCTET_LENGTH_PTR ARD hodnotu null, ovladač nevrací informace o délce daného sloupce.

  • Pokud má pole SQL_DESC_OCTET_LENGTH_PTR APD hodnotu null a parametr je řetězec znaků, ovladač předpokládá, že řetězec je ukončen nulovým znakem. U výstupních dynamických parametrů hodnota null v tomto poli brání ovladači v vrácení informací o délce. (Pokud pole SQL_DESC_TYPE nenaznačuje parametr řetězce znaků, bude pole SQL_DESC_OCTET_LENGTH_PTR ignorováno.)

Aplikace nesmí uvolnit ani zahodit proměnné používané pro odložená pole mezi časem, kdy je přidruží k polím, a časem, kdy je ovladač přečte nebo zapíše.