Link Search Menu Expand Document

Транзакция

Стд::БазаДанных::Транзакция
Базовые типы: Контекст
Доступность: Сервер

Объект встроенного языка для управления транзакцией базы данных.
Для упрощения работы с транзакциями в коде прикладного решения предполагается использование с модификатором исп. При объявлении переменной будет выполнено открытие новой транзакции (фактической или логической), а при выходе из области видимости она будет завершаться.

Сравнение ссылочное


Свойства

Ид

ТолькоЧтение Ид: Строка
Доступность: Сервер

Внутренний идентификатор транзакции.
Для идентификатора обещается только уникальность в рамках одного процесса ОС в котором он был получен, в течении достаточно длительного периода времени для использования его на практике в качестве идентификатора транзакции в логах.
Идентификатор не следует использовать для построения на его основе какой-либо логики.


Основная

ТолькоЧтение Основная: Булево
Доступность: Сервер

Признак основной транзакции.
Фактическая транзакция может быть только одна, все остальные транзакции, которые открываются в рамках действия существующей, будут являться логическими (далее — вложенными). Транзакция считается основной если она не является вложенной.


Методы

ВСтроку

ВСтроку(): Строка
Доступность: КлиентИСервер
Переопределение: ВСтроку

Возвращает строку вида "Transaction %Id".


Закрыть

Закрыть()
Доступность: КлиентИСервер
Переопределение: Закрыть

Закрывает текущую транзакцию.
Если закрытие происходит из-за выброса исключения — транзакция отменяется, иначе — фиксируется.


Откатить

Откатить()
Доступность: Сервер

Закрывает транзакцию и откатывает её.
Повторный вызов метода приведет к исключению.


Фиксировать

Фиксировать()
Доступность: Сервер

Закрывает транзакцию и фиксирует её.
Если транзакция находится в состоянии, при котором можно только отменить изменения транзакции (например, одна из вложенных транзакций была отменена), то при попытке фиксации изменений такой транзакции будет вызвано исключение ИсключениеНедопустимоеСостояниеТранзакции. Повторный вызов метода приведет к исключению.