Rambler's Top100

(c)2009-2017 openinfotech.ru

СУБД HyTech

Документация
Функция fn_htRollBackTransaction

htRollBackTransaction - Аварийное завершение транзакции

Назначение:

Функция позволяет прервать выполнение стартовавшей ранее транзакции. Все изменения, выполненные в таблицах, задействованных в транзакции, уничтожаются. Таблицы возвращаются в состояние, к котором они находились до начала выполнения транзакции. При этом уничтожаются все изменения и дополнения, выполненные в таблицах, задействованных в транзакции.

Процедура отката транзакции не выполняет автоматического освобождения захваченных после старта транзакции записей или таблиц. Освобождение записей и таблиц следует выполнить явно и ДО вызова функции htRollBackTransaction.

Более того, результаты поисков, выполненные после начала транзакции и последующего ее отката будут содержать ссылки на "несуществующие" записи (эти записи были дезавуированы в процессе отката). Такие результаты поиска использовать нельзя. БДС следует очистить. Очистку БДС можно выполнять в любой момент времени (до или после htRollBackTransaction).

Механизм транзакций должен быть включен (задан путь на журнал транзакций и уникальное сетевое имя станции и установлены режимы работы).

После завершения функции значение идентификатора транзакции теряет смысл.

Прототип:

 int HTAPI htRollBackTransaction(
	LPTRID fpTrans /* Идентификатор транзакции */
 );

Параметры

fpTrans
содержит значение идентификатора транзакции. Это значение было получено при успешно завершении функции htStartTransaction

Результат:

0 при успешном завершении
отрицательное число код ошибки