Sql commit, Sql rollback – HEIDENHAIN TNC 640 (34059x-04) Uživatelská příručka

Stránka 328

Advertising
background image

Programování: Q-Parametry

9.9

Přístupy do tabulek s příkazy SQL

9

328

TNC 640 | Uživatelská příručka programování s popisným dialogem HEIDENHAIN | 4/2014

SQL COMMIT

SQL COMMIT

převádí všechny řádky z výsledkové sady zpátky do

tabulky. Také se zruší zablokování nastavené pomocí SELECT...FOR

UPDATE

.

Handle přidělený během instrukce SQL SELECT ztrácí svoji platnost.

Číslo parametru pro výsledek

: Q-parametr, kterým

server SQL hlásí zpátky výsledek:

0: nedošlo k žádné chybě

1: došlo k chybě (chybný Handle nebo stejné

záznamy ve sloupcích, v nichž jsou požadovány

jednoznačné záznamy).
Databanka: ID přístupu SQL

: Q-parametr,

obsahující

Handle

pro identifikaci výsledkové sady

(viz také SQL SELECT).

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

"SELECTMESS_NR,MESS_X,MESS_Y,

MESS_Z FROM TAB_EXAMPLE"

. . .
30 SQL FETCH Q1HANDLE Q5 INDEX

+Q2

. . .
40 SQL UPDATEQ1 HANDLE Q5 INDEX

+Q2

. . .
50 SQL COMMITQ1 HANDLE Q5

SQL ROLLBACK

Provedení SQL ROLLBACK závisí na tom, zda je naprogramovaný

INDEX

:

INDEX

není programovaný: výsledková sada se

nezapíše

zpět

do tabulky (případné změny / doplnění se ztratí) Transakce se

ukončí - Handle přidělený během SQL SELECT ztratí svoji platnost.

Typické použití: ukončíte transakci s výlučně čtecím přístupem.
INDEX

je naprogramovaný: indexovaná řádka zůstane zachovaná

– všechny ostatní řádky se z výsledkové sady odstraní. Transakce

se

neuzavře

. Blokování nastavené pomocí SELECT...FOR

UPDATE

zůstane pro indexované řádky zachované – pro všechny

ostatní řádky se zruší.

Číslo parametru pro výsledek

: Q-parametr, kterým

server SQL hlásí zpátky výsledek:

0: nedošlo k žádné chybě

1: došlo k chybě (chybný Handle)
Databanka: ID přístupu SQL

: Q-parametr,

obsahující

Handle

pro identifikaci výsledkové sady

(viz také SQL SELECT).
Databanka: Index výsledku SQL

: řádky, které mají

zůstat ve výsledkové sadě. Číslo řádku se uvádí

přímo nebo naprogramujte Q-parametr, který Index

obsahuje.

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

"SELECTMESS_NR,MESS_X,MESS_Y,

MESS_Z FROM TAB_EXAMPLE"

. . .
30 SQL FETCH Q1HANDLE Q5 INDEX

+Q2

. . .
50 SQL ROLLBACKQ1 HANDLE Q5

Advertising