Sql commit, Sql rollback – HEIDENHAIN TNC 640 (34059x-04) User Manual
Page 326

Programming: Q Parameters
9.9
Accessing tables with SQL commands
9
326
TNC 640 | User's Manual
HEIDENHAIN Conversational Programming | 3/2014
SQL COMMIT
SQL COMMIT transfers all rows in the result set back to the table. A
lock set with
SELECT...FOR UPDATE is canceled.
The handle given in the
SQL SELECT command loses its validity.
Parameter no. for result: Q parameter, in which
the SQL server has reported the result:
0: No error occurred
1: Error occurred (incorrect handle or equal entries in
columns requiring unique entries)
Database: SQL access ID: Q parameter with the
handle
for identifying the result set (also see
SQL
SELECT).
11SQL BIND Q881
"TAB_EXAMPLE.MEAS_NO"
12SQL BIND Q882
"TAB_EXAMPLE.MEAS_X"
13SQL BIND Q883
"TAB_EXAMPLE.MEAS_Y"
14SQL BIND Q884
"TAB_EXAMPLE.MEAS_Z"
. . .
20SQL Q5 "SELECT
MEAS_NO,MEAS_X,MEAS_Y, MEAS_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
How
SQL ROLLBACK is executed depends on whether INDEX is
programmed:
If
INDEX is not programmed: The result set is
not
written back to
the table (any changes/insertions are discarded). The transaction
is closed and the handle given in the
SQL SELECT command
loses its validity. Typical application: Ending a transaction solely
containing read-accesses.
If
INDEX is programmed: The indexed row remains. All other rows
are deleted from the result set. The transaction is
not
concluded.
A lock set with
SELECT...FOR UPDATE remains for the indexed
row. For all other rows it is reset.
Parameter no. for result: Q parameter, in which
the SQL server has reported the result:
0: No error occurred
1: Error occurred (incorrect handle)
Database: SQL access ID: Q parameter with the
handle
for identifying the result set (also see
SQL
SELECT).
Database: Index to SQL result: Line that is to
remain in the result set. Either enter the row
number directly or program the Q parameter
containing the index
11SQL BIND Q881
"TAB_EXAMPLE.MEAS_NO"
12SQL BIND Q882
"TAB_EXAMPLE.MEAS_X"
13SQL BIND Q883
"TAB_EXAMPLE.MEAS_Y"
14SQL BIND Q884
"TAB_EXAMPLE.MEAS_Z"
. . .
20SQL Q5 "SELECT
MEAS_NO,MEAS_X,MEAS_Y, MEAS_Z
FROM TAB_EXAMPLE"
. . .
30 SQL FETCH Q1HANDLE Q5 INDEX
+Q2
. . .
50 SQL ROLLBACKQ1 HANDLE Q5