Sql commit, Sql rollback, 9 dostp do tabeli z instrukcjami sql – HEIDENHAIN TNC 320 (340 551-01) Instrukcja Obsługi

Strona 359

Advertising
background image

HEIDENHAIN TNC 320

359

10.9 Dostp do tabeli z instrukcjami SQL

SQL COMMIT

SQL COMMIT transferuje wszystkie istniej ce w Result set wiersze
z powrotem do tabeli. Wyznaczona z SELCT...FOR UPDATE
blokada zostaje anulowana.

Nadany w instrukcji SQL SELECT handle traci swoj ważność.

8

Nr parametru dla wyniku: Q parametr, w którym

serwer SQL melduje z powrotem wynik:
0: nie pojawił si bł d
1: wyst pił bł d (niewłaściwy handle lub podobne
zapisy w kolumnach, w których konieczne s
jednoznaczne zapisy)

8

Baza danych: SQL ID dost pu: Q parametr, z

handle dla identyfikacji Result sets (patrz także
SQL SELECT).

SQL ROLLBACK

Wykonanie SQL ROLLBACK zależy od tego, czy INDEKS jest
zaprogramowany:

„

INDEKS nie zaprogramowany: result set nie zapisany do tabeli
(ewentualne zmiany/uzupełnienia s stracone). Transakcja
zostaje zakończona – nadany w SQL SELECT handle traci swoj
ważność. Typowe zastosowanie: operator zamyka transakcj z
wył cznymi dost pami czytania.

„

INDEKS zaprogramowany: indeksowany wiersz pozostaje
zachowany – wszystkie inne wiersze zostaj usuni te z Result set.
Transakcja nie zostaje zakończona. Wyznaczona z SELCT...FOR
UPDATE
blokada pozostaje zachowana dla indeksowanego
wiersza – dla wszystkich innych wierszy zostaje ona skasowana.

8

Nr parametru dla wyniku: Q parametr, w którym

serwer SQL melduje z powrotem wynik:
0: nie pojawił si bł d
1: wyst pił bł d (niewłaściwy handle)

8

Baza danych: SQL ID dost pu: Q parametr, z

handle dla identyfikacji Result sets (patrz także
SQL SELECT).

8

Baza danych: indeks do SQL wyniku: wiersz,

który ma pozostać w Result set. Numer wiersza
zostaje podawany bezpośrednio lub operator
programuje Q parametr, zawieraj cy indeks.

Przykład:

11 SQL BIND Q881
"TAB_EXAMPLE.MESS_NR"

12 SQL BIND Q882
"TAB_EXAMPLE.MESS_X"

13 SQL BIND Q883
"TAB_EXAMPLE.MESS_Y"

14 SQL BIND Q884
"TAB_EXAMPLE.MESS_Z"

. . .

20 SQL Q5 "SELECT
MESS_NR,MESS_X,MESS_Y, MESS_Z FROM
TAB_EXAMPLE"

. . .

30 SQL FETCH Q1 HANDLE Q5 INDEX+Q2

. . .

40 SQL UPDATE Q1 HANDLE Q5 INDEX+Q2

. . .

50 SQL COMMIT Q1 HANDLE Q5

Przykład:

11 SQL BIND Q881
"TAB_EXAMPLE.MESS_NR"

12 SQL BIND Q882
"TAB_EXAMPLE.MESS_X"

13 SQL BIND Q883
"TAB_EXAMPLE.MESS_Y"

14 SQL BIND Q884
"TAB_EXAMPLE.MESS_Z"

. . .

20 SQL Q5 "SELECT
MESS_NR,MESS_X,MESS_Y, MESS_Z FROM
TAB_EXAMPLE"

. . .

30 SQL FETCH Q1 HANDLE Q5 INDEX+Q2

. . .

50 SQL ROLLBACK Q1 HANDLE Q5

Advertising