Sql commit, Sql rollback, Sql commit sql rollback – Инструкция по эксплуатации HEIDENHAIN TNC 620 (340 56x-02)

Страница 277: 9 д о ст уп к таб л иц ам с sql- инстр укциями

Advertising
background image

HEIDENHAIN TNC 620

277

8.9

Д

о

ст

уп

к

таб

л

иц

ам

с

SQL-

инстр

укциями

SQL COMMIT

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

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

UPDATE блокировка отменяется.

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

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

U

Номер параметра результата: Q-параметр, в

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

0: ошибка не появилась

1: ошибка появилась (неверный Handle или те же

самые данные в столбцах, в который требуются

однозначные данные)

U

База данных: SQL-доступ-ID: Q-параметр, с Handle

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

(см. также SQL SELECT).

SQL ROLLBACK

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

ли ИНДЕКС:

„

ИНДЕКС не запрограммирован: буфер набора результатов не

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

теряются). Трансакция заключается – назначенный в SQL
SELECT
Handle теряет свою важность. Типичное

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

правом чтения.

„

ИНДЕКС запрограммирован: выделенная строка сохраняется –

все другие строки удаляются из Result-set. Транзакция не

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

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

остальных строк она отменяется.

U

Номер параметра результата: Q-параметр, в

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

0: ошибка не появилась

1: ошибка появилась (неверный Handle)

U

База данных: SQL-доступ-ID: Q-параметр, с Handle

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

(см. также SQL SELECT).

U

База данных: индекс к SQL-результату: строка,

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

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

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

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

Példa:

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 "SELECT
MESS_NR,MESS_X,MESS_Y, MESS_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

Példa:

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 "SELECT
MESS_NR,MESS_X,MESS_Y, MESS_Z FROM
TAB_EXAMPLE"

. . .

30 SQL FETCH Q1 HANDLE Q5 INDEX+Q2

. . .

50 SQL ROLLBACK Q1 HANDLE Q5

Advertising