Sql commit, Sql rollback, 8 a ccessing tables with sql commands – HEIDENHAIN TNC 620 (73498x-01) ISO programming User Manual

Page 248

Advertising
background image

248

Programming: Q parameters

8.8 A

ccessing tables with SQL commands

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.

U

Parameter no. for result

: Q parameter in which the

SQL server reports the result:
0: No error occurred.
1: Error occurred (incorrect handle or equal entries in
columns requiring unique entries)

U

Data bank: SQL access ID

: Q parameter with the

handle for identifying the result set (also see SQL
SELECT

)

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.

U

Parameter no. for result

: Q parameter in which the

SQL server reports the result:
0: No error occurred.
1: Error occurred (incorrect handle)

U

Data bank: SQL access ID

: Q parameter with the

handle for identifying the result set (also see SQL
SELECT

)

U

Data bank: Index for SQL result

: Row that is to

remain in the result set. Either enter the row number
directly or program the Q parameter containing the
index

Example:

11 SQL BIND Q881 "TAB_EXAMPLE.MEAS_NO"

12 SQL BIND Q882 "TAB_EXAMPLE.MEAS_X"

13 SQL BIND Q883 "TAB_EXAMPLE.MEAS_Y"

14 SQL BIND Q884 "TAB_EXAMPLE.MEAS_Z"

. . .

20 SQL Q5 "SELECT MEAS_NO,MEAS_X,MEAS_Y,
MEAS_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

Example:

11 SQL BIND Q881 "TAB_EXAMPLE.MEAS_NO"

12 SQL BIND Q882 "TAB_EXAMPLE.MEAS_X"

13 SQL BIND Q883 "TAB_EXAMPLE.MEAS_Y"

14 SQL BIND Q884 "TAB_EXAMPLE.MEAS_Z"

. . .

20 SQL Q5 "SELECT MEAS_NO,MEAS_X,MEAS_Y,
MEAS_Z FROM TAB_EXAMPLE"

. . .

30 SQL FETCH Q1 HANDLE Q5 INDEX+Q2

. . .

50 SQL ROLLBACK Q1 HANDLE Q5

Advertising