Основы языка TRANSACT SQL. Казакова И.А. - 131 стр.

UptoLike

Составители: 

130
При работе в режиме неявного (подразумевающегося) начала
транзакций SQL Server автоматически начинает новую транзакцию,
как только будет завершена предыдущая. Установка режима подра-
зумевающегося определения транзакций выполняется посредством
команды
SET IMPLICIT_TRANSACTIONS ON;
16.2. Явные транзакции
Явные транзакции требуют, чтобы пользователь указал начало
и конец транзакции, используя следующие команды:
1) начало транзакции: в журнале транзакций фиксируются
первоначальные значения изменяемых данных и момент начал
транзакции:
BEGIN TRAN[SACTION] [имя_транзакции ]
2) конец транзакции COMMIT
{[TRAN[SACTION][имя_транзакции]|.[WORK]};
3) создание внутри транзакции точки сохранения: СУБД
сохраняет состояние БД в текущей точке и присваивает сохранен-
ному состоянию имя точки сохранения:
SAVE TRAN[SACTION] имя_точки_сохранения;
4) прерывание транзакции; когда сервер встречает эту коман-
ду, происходит откат транзакции, восстанавливается первоначаль-
ное состояние системы и в журнале транзакций отмечается, что
транзакция была отменена:
ROLLBACK [TRAN[SACTION]
[имя_транзакции | имя_точки_сохранения];
Эта команда отменяет все изменения, в базу данных после
оператора BEGIN TRANSACTION или отменяет изменения, вне-
сенные в базу данных после точки сохранения. Транзакция возвра-
щается к месту, где был выполнен оператор SAVE TRANSACTION.
Пример 114. Использование точек сохранения
BEGIN TRAN
SAVE TRANSACTION point1
В точке point1 сохраняется первоначальное состояние таблицы
Students.
     При работе в режиме неявного (подразумевающегося) начала
транзакций SQL Server автоматически начинает новую транзакцию,
как только будет завершена предыдущая. Установка режима подра-
зумевающегося определения транзакций выполняется посредством
команды
              SET IMPLICIT_TRANSACTIONS ON;

                 16.2. Явные транзакции
     Явные транзакции требуют, чтобы пользователь указал начало
и конец транзакции, используя следующие команды:
     1) начало транзакции: в журнале транзакций фиксируются
первоначальные значения изменяемых данных и момент начал
транзакции:
            BEGIN TRAN[SACTION] [имя_транзакции ]
     2) конец транзакции COMMIT
{[TRAN[SACTION][имя_транзакции]|.[WORK]};
     3) создание внутри транзакции точки сохранения: СУБД
сохраняет состояние БД в текущей точке и присваивает сохранен-
ному состоянию имя точки сохранения:
          SAVE TRAN[SACTION] имя_точки_сохранения;
     4) прерывание транзакции; когда сервер встречает эту коман-
ду, происходит откат транзакции, восстанавливается первоначаль-
ное состояние системы и в журнале транзакций отмечается, что
транзакция была отменена:
                  ROLLBACK [TRAN[SACTION]
           [имя_транзакции | имя_точки_сохранения];
     Эта команда отменяет все изменения, в базу данных после
оператора BEGIN TRANSACTION или отменяет изменения, вне-
сенные в базу данных после точки сохранения. Транзакция возвра-
щается к месту, где был выполнен оператор SAVE TRANSACTION.
     Пример 114. Использование точек сохранения
     BEGIN TRAN
     SAVE TRANSACTION point1
     В точке point1 сохраняется первоначальное состояние таблицы
Students.



                              130