|
![]() | 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 | ![]() |