|
|
| Proměnné klientských aplikací v příkazech SQL (Embedded SQL) | Způsoby použití SQL ve 602SQL | Dynamické SQL příkazy uvnitř uložených procedur |
Databázový klient 602SQL může provádět příkazy jazyka SQL dvojím způsobem:
SQL_execute předává serveru příkaz, který má být proveden;SQL_prepare nebo cd_SQL_host_prepare předá serveru příkaz, pak jej pomocí funkce SQL_exec_prepared jednou nebo vícekrát provede, a nakonec přípravu zruší pomocí funkce SQL_drop.Výhodou přímého způsobu je jednoduchost na straně klienta. Volání jediné funkce vyvolá kompletní zpracování příkazu SQL.
Výhodou provádění SQL příkazů s přípravou je zejména úspora času, pokud se stejný příkaz (případně s různými hodnotami parametrů) má provádět opakovaně. Během přípravy server kompletně analyzuje příkaz SQL a sestaví optimalizovaný plán pro jeho provedení. Každé zavolání funkce SQL_exec_prepared pak již jen vyvolá uskutečnění tohoto plánu. Funkce SQL_drop zruší již nepotřebný plán provádění příkazu.
Klient může mít v jednom okamžiku řadu připravených příkazů a může je provádět v libovolném pořadí.
Pokud připravený příkaz obsahuje odkazy na globální proměnné projektu klienta, pak se při provádění příkazu uplatní hodnoty proměnných platné v okamžiku volání funkce SQL_exec_prepared. Díky tomu může opakované provedení připraveného příkazu pracovat pokaždé s jinými hodnotami.
Případným voláním funkce Set_application se zruší příprava všech příkazů a zneplatní jejich handle.
| Proměnné klientských aplikací v příkazech SQL (Embedded SQL) | Způsoby použití SQL ve 602SQL | Dynamické SQL příkazy uvnitř uložených procedur |