SQL_prepare

Internφ programovacφ jazykC/C++Pascal

function SQL_prepare(var statement : string; var handle : Integer) : Boolean;
BOOL [cd_]SQL_prepare([cdp_t cdp], const char * statement, uns32 * handle);
function [cd_]SQL_prepare([cdp : cdp_t]; statement : PChar; var handle : uns32) : Boolean;

Parametry

statement SQL p°φkaz
handle handle (Φφslo) SQL po₧adavku
[cdp kontextovß prom∞nnß klienta]

Od verze:

5.1

Popis

Funkce p°ipravφ k provedenφ p°φkaz zadan² parametrem statement a v p°φpad∞ ·sp∞chu vrßtφ jeho handle. Zp∙sob p°edßvßnφ prom∞nn²ch jazyka viz Prom∞nnΘ vnit°nφho programovacφho jazyka v p°φkazech SQL.

V parametru statement m∙₧e b²t vφce SQL p°φkaz∙ odd∞len²ch st°ednφkem. P°i volßnφ z vnit°nφho jazyka smφ b²t v parametru statement max. 12 SQL p°φkaz∙. Na rozdφl od volßnφ funkce z externφho jazyka nesmφ b²t ve statement pou₧it (ve smyslu p°φkazu) dotazov² v²raz SELECT - (dotaz se ve vnit°nφm jazyku otevφrß pomocφ funkce Open_sql_cursor).

Hodnota funkce

Funkce vracφ TRUE p°i chyb∞.

P°φklad

var jmeno:string[40];  osobni_cislo : Integer;  plat : Money;
    handle1, handle2 : Integer;

SQL_prepare(ÆINSERT INTO ZAMEST(JMENO, OS_CIS, PLAT)Æ
            ÆVALUES (:<jmeno, :<osobni_cislo, :<plat)Æ, handle1);
SQL_prepare(ÆSELECT PLAT INTO :>plat FROM ZAMESTÆ 
            Æ WHERE OS_CIS=:<osobni_cisloÆ, handle2);

PotΘ lze v libovolnΘm po°adφ vklßdat novΘ zßznamy a vyhledßvat plat dle osobnφho Φφsla:

jmeno:=ÆJan NovßkÆ;   osobni_cislo:=4205;  plat:=13500;
SQL_exec_prepared(handle1);
jmeno:=ÆKarel Star²Æ; osobni_cislo:=4509;  plat:=14300;
SQL_exec_prepared(handle1);
osobni_cislo:=4205;
SQL_exec_prepared(handle2);
Info_box(ÆPlat jeÆ, money2str(plat, 1));

Viz