Parametry
curs | otev°en² pevn² nebo prom∞nn² kurzor -viz podrobnosti |
recs | pole Φφsel zßznam∙ (typu trecnum), kterΘ vytvo°φ jeden zßznam v kurzoru; poΦet tabulek spojen²ch v dotazu=poΦet prvk∙ pole |
numoftabs | poΦet tabulek, z nich₧ je vtvo°en kurzor |
[cdp | kontextovß prom∞nnß klienta] |
Popis
Funkce Add_record
p°idß jeden nov² zßznam do otev°enΘho kurzoru curs. Tento zßznam je popsßn enticφ absolutnφch Φφsel zßznam∙ v tabulkßch, jejich₧ spojenφm je kurzor vytvo°en, ulo₧enou v poli recs. Pou₧φvß se, kdy₧ autor aplikace chce vytvo°it v programu prom∞nn² kurzor, jen₧ obsahuje zßznamy vybranΘ z tabulek explicitn∞, nikoli podmφnkou WHERE(nap°. n∞kter² zßznam se mß opakovat).
Je-li dotaz vytvo°en z jedinΘ tabulky (nejΦast∞jÜφ p°φpad - numoftabs = 1 ), je mo₧nΘ mφsto pole recs p°edat Φφslo zßznamu v prom∞nnΘ typu Integer - viz p°φklad.
Funkce Add_record
le₧φ mimo relaΦnφ algebru vytvß°ejφcφ kurzory (a zcela mimo SQL). Proto nelze spolΘhat na to, ₧e zßznamy p°idanΘ do kurzoru funkcφ Add_record
budou pou₧ity p°i konstrukci subkurzoru tohoto kurzoru.
Hodnota funkce
Funkce vracφ FALSE p°i ·sp∞chu, jinak vracφ TRUE.
P°φklad
// vytvo°φ prßzdn² prom∞nn² kurzor ADDC
Open_sql_cursor(addc,"select * from TAB1 where FALSE");
// do prom∞nnΘ zadß absolutnφ Φφslo zß
znamu z tabulky TAB1, kter² mß b²t v kurzoru cislozaz := ...
// tento zßznam p°idß do kurzoru
Add_record(addc, cislozaz, 1);