Sql commit, Sql rollback, Accessi alle tabelle con istruzioni sql 9.8 – HEIDENHAIN TNC 620 (81760x-01) ISO programming Manuale d'uso
Pagina 291

Accessi alle tabelle con istruzioni SQL
9.8
9
TNC 620 | Manuale utente Programmazione DIN/ISO | 4/2014
291
SQL COMMIT
SQL COMMIT trasferisce tutte le righe presenti nel result-set di nuovo
nella tabella. Un blocco impostato con
SELECT...FOR UPDATE viene
annullato.
L'handle predefinito con l'istruzione
SQL SELECT perde la propria
validità.
N. parametro per risultato: parametro Q in cui il
server SQL fornisce il risultato:
0: nessun errore verificatosi
1: errore verificatosi (handle errato o stesse voci
nelle colonne in cui sono richieste voci univoche)
Database: ID accesso SQL: parametro Q con
l’
handle
per l’identificazione del result-set (vedere
anche
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
L'esecuzione di
SQL ROLLBACK dipende dalla programmazione
dell'
INDICE:
INDICE non programmato: il result-set
non
viene riscritto
nella tabella (eventuali modifiche/integrazioni vanno perse). La
transazione viene conclusa; l'handle predefinito con
SQL SELECT
perde la propria validità. Applicazione tipica: si conclude una
transazione con accessi esclusivamente in lettura.
INDICE programmato: la riga indicizzata rimane invariata; tutte le
altre righe vengono eliminate dal result-set. La transazione
non
viene conclusa. Un blocco impostato con
SELECT...FOR UPDATE
rimane invariato per la riga indicizzata; per tutte le altre righe viene
ripristinato.
N. parametro per risultato: parametro Q in cui il
server SQL fornisce il risultato:
0: nessun errore verificatosi
1: errore verificatosi (handle errato)
Database: ID accesso SQL: parametro Q con
l’
handle
per l’identificazione del result-set (vedere
anche
SQL SELECT).
Database: indice per risul. SQL: riga che deve
rimanere nel result-set. Il numero di riga viene
indicato direttamente o si programma il parametro Q
che contiene l'indice.
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