SQL EXECUTE používajte v spojení s rôznymi príkazmi SQL.
Aplikácia
Predpoklady
- Kódové číslo 555343
- Tabuľka dostupná
- Vhodný názov tabuľky
Názvy tabuliek a stĺpcov tabuliek musia začínať písmenom a nesmú obsahovať žiadne výpočtové znaky, napr. +. Tieto znaky môžu na základe príkazov SQL spôsobovať problémy pri načítaní alebo preberaní údajov.
Opis funkcie

Ovládanie ponúka nasledujúce príkazy SQL v príkaze SQL EXECUTE:
Inštrukcia | Funkcia |
---|---|
SELECT | Vybrať dáta |
CREATE SYNONYM | Vytvoriť synonymum (nahradenie dlhých ciest krátkym názvom) |
DROP SYNONYM | Vymazať synonymum |
CREATE TABLE | Vytvoriť tabuľku |
COPY TABLE | Kopírovať tabuľku |
RENAME TABLE | Premenovať tabuľku |
DROP TABLE | Vymazať tabuľku |
INSERT | Vložiť riadky tabuľky |
UPDATE | Aktualizácia riadkov tabuľky |
DELETE | Vymazať riadok tabuľky |
ALTER TABLE |
|
RENAME COLUMN | Premenovať stĺpce tabuliek |
SQL EXECUTE s príkazom SQL SELECT
Server SQL uloží dáta po riadkoch do Result-set (výsledné množstvo). Riadky budú číslované priebežne začínajúc od 0. Toto číslo riadka (INDEX) používajú príkazy SQL FETCH a UPDATE.
SQL EXECUTE v spojení s príkazom SQL SELECT vyberie hodnoty z tabuľky, prenesie ich do Result-set a pri tom vždy otvorí transakciu. Na rozdiel od príkazu SQL SQL SELECT umožňuje kombinácia príkazu SQL EXECUTE a príkazu SELECT súčasný výber viacerých stĺpcov a riadkov.
Vo funkcii SQL… "SELECT…WHERE…" zadajte kritériá vyhľadávania. Takto obmedzíte v prípade potreby počet prenášaných riadkov. Keď nepoužijete túto možnosť, nahrajú sa všetky riadky tabuľky.
Vo funkcii SQL… "SELECT…ORDER BY…" zadajte kritérium usporiadania. Informácia sa skladá z označenia stĺpca a kľúčového slova (ASC) na vzostupné alebo (DESC) zostupné usporiadanie. Keď nepoužijete túto funkciu, riadky sa uložia v náhodnom poradí.
Pomocou funkcie SQL… "SELECT...FOR UPDATE" zablokujte vybrané riadky pre iné aplikácie. Iné aplikácie budú môcť tieto riadky aj naďalej čítať, ale nie ich meniť. Túto možnosť používajte bezpodmienečne pri zmenách záznamov v tabuľkách.
Prázdny Result-set: Ak nie sú dostupné žiadne riadky, ktoré zodpovedajú kritériu vyhľadávania, poskytne server SQL platný identifikátor HANDLE, ale nie záznamy tabuľky.
Podmienka | Programovanie |
---|---|
rovná sa | = == |
nerovná sa | != <> |
menší | < |
menší alebo rovný | <= |
väčší | > |
väčší alebo rovný | >= |
prázdny | IS NULL |
nie je prázdny | IS NOT NULL |
Zlúčenie viacerých podmienok: | |
Logický výraz A | AND |
Logický výraz ALEBO | OR |
Upozornenia
- Synonymá môžete definovať aj pre ešte nevytvorené tabuľky.
- Poradie stĺpcov vo vytvorenom súbore zodpovedá poradiu v príkaze AS SELECT.
- Pre príkazy v rámci príkazu SQL môžete použiť aj jednoduché alebo zložené parametre QS.
- Keď skontrolujete obsah parametra QS v prídavnom zobrazení stavu (karta QPARA), budete vidieť výlučne prvých 30 riadkov, a teda nie celý obsah.
Združenie alfanumerických hodnôt
Príklad
11 SQL BIND Q881 "Tab_Example.Position_Nr" | |
12 SQL BIND Q882 "Tab_Example.Measure_X" | |
13 SQL BIND Q883 "Tab_Example.Measure_Y" | |
14 SQL BIND Q884 "Tab_Example.Measure_Z" | |
. . . | |
20 SQL Q5 "SELECT Position_Nr,Measure_X,Measure_Y, Measure_Z FROM Tab_Example" |
20 SQL Q5 "SELECT Position_Nr,Measure_X,Measure_Y, Measure_Z FROM Tab_Example WHERE Position_Nr<20" |
20 SQL Q5 "SELECT Position_Nr,Measure_X,Measure_Y, Measure_Z FROM Tab_Example WHERE Position_Nr==:’Q11’" |
20 SQL Q5 "SELECT Position_Nr,Measure_X,Measure_Y, Measure_Z FROM ’V:\table\Tab_Example’ WHERE Position_Nr<20" |
0 BEGIN PGM SQL_CREATE_TAB MM | |
1 SQL Q10 "CREATE SYNONYM NEW FOR 'TNC:\table\NewTab.TAB'" | ; Vytvoriť synonymum |
2 SQL Q10 "CREATE TABLE NEW AS SELECT X,Y,Z FROM 'TNC:\prototype_for_NewTab.tab'" | ; Vytvoriť tabuľku |
3 END PGM SQL_CREATE_TAB MM |
0 BEGIN PGM SQL_CREATE_TABLE_QS MM | |
1 DECLARE STRING QS1 = "CREATE TABLE " | |
2 DECLARE STRING QS2 = "'TNC:\nc_prog\demo\Doku\NewTab.t' " | |
3 DECLARE STRING QS3 = "AS SELECT " | |
4 DECLARE STRING QS4 = "DL,R,DR,L " | |
5 DECLARE STRING QS5 = "FROM " | |
6 DECLARE STRING QS6 = "'TNC:\table\tool.t'" | |
7 QS7 = QS1 || QS2 || QS3 || QS4 || QS5 || QS6 | |
8 SQL Q1800 QS7 | |
9 END PGM SQL_CREATE_TABLE_QS MM |