Read_var

c/c++pascal

BOOL [cd_]Read_var([cdp_t cdp], tcurstab curs, trecnum position, tattrib attr, uns16 index, uns32 start, uns32 size, void * buf, uns32 * psize);
function [cd_]Read_var([cdp : cdp_t]; curs : tcurstab; position : trecnum; attr : tattrib; index : uns16; start, size : uns32; var buffer; var psize : uns32) : Boolean;

Parametry

curs číslo otevřeného kurzoru nebo tabulky - viz podrobnosti
position číslo záznamu
attr číslo sloupce, jehož hodnota se čte
index vždy kontanta NOINDEX
start odkud se čte
size kolik bajtů se má přečíst
buffer proměnná, do níž se uloží přečtená hodnota
psize výstupní parametr: počet přečtených bajtů
[cdp kontextová proměnná klienta]

Popis

Funkce přečte obsah sloupce proměnné velikosti z databáze. Hodnotu zapíše do proměnné buffer.

Objekt, z něhož se má číst, může být buď tabulka zadaná svým číslem (nalezeným funkcí Find_object) nebo otevřený kurzor (funkcí Open_cursor nebo Open_cursor_direct).

Přečteno bude nejvýše size bajtů od pozice start hodnoty sloupce proměnné velikosti.

Do proměnné psize funkce zapíše počet skutečně přečtených bajtů.

Funkce neprovádí žádné zamykání záznamů v databázi. Může číst i data právě přepisovaná jinou aplikací. Pokud proměnná buffer není dostatečně dlouhá, může dojít k přepsání paměti a následnému zhroucení systému.

Hodnota funkce

Funkce vrací při úspěchu FALSE, při neúspěchu TRUE.

Viz