Sql commit, Sql rollback – Инструкция по эксплуатации HEIDENHAIN TNC 640 (34059x-02) ISO programming

Страница 288

Advertising
background image

Программирование: Q-параметры

9.8

Доступ к таблицам с помощью SQL-инструкций

9

288

TNC 640 | Руководство пользователя «Программирование DIN/ISO» | 12/2013

SQL COMMIT

SQL COMMIT

передает все имеющиеся в буфере Result-set строки

обратно в таблицу. Назначенная с помощью SELCT...FOR UPDATE

блокировка отменяется.
Назначенный в инструкции SQL SELECT Handle становится

недействительным.

Номер параметра результата

: Q-параметр, в

который SQL-сервер сообщает результат:

0: не обнаружено ошибок

1: обнаружена ошибка (неверный Handle или

одинаковые записи в столбах, в которых должны

быть однозначные записи)
База данных: SQL-доступ-ID

: Q-параметр, с

Handle

для идентификации буфера набора

результатов (см. также 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

Выполнение SQL ROLLBACK зависит от того, программировался

ли ИНДЕКС:

ИНДЕКС

не запрограммирован: буфер набора результатов

не

записывается в таблицу (имеющиеся изменения/дополнения

теряются). Транзакция завершается – назначенный в

SQL SELECT

Handle теряет свою важность. Типичное

использование: оператор заканчивает транзакцию в режиме с

правом чтения.
ИНДЕКС

запрограммирован: индексированная строка

сохраняется в буфере набора результатов – все другие

строки удаляются из оттуда. Транзакция

не

заканчивается.

Установленная с SELCT...FOR UPDATE блокировка

сохраняется для выделенной строки – для всех остальных

строк она отменяется.

Номер параметра результата

: Q-параметр, в

который SQL-сервер сообщает результат:

0: не обнаружено ошибок

1: обнаружена ошибка (неверный Handle)
База данных: SQL-доступ-ID

: Q-параметр, с

Handle

для идентификации буфера набора

результатов (см. также SQL SELECT).
База данных: индекс к SQL-результату

:

строка, которая должна сохраняться в буфере

набора результатов. Номер строки вводится

непосредственно либо оператор программирует

Q-параметр, содержащий индекс.

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