|
Транзакции
Компонент TADOconnection
позволяет выполнять транзакции. Методы
function BeginTrans:
Integer;
procedure CommitTrans;
procedure RollbackTrans;
обеспечивают начало, фиксацию и откат
транзакции соответственно. Методы-обработчики
TBeginTransCompleteEvent
= procedure(Connection: TADOConnection;
TransactionLevel:
Integer;
const Error: Error;
var EventStatus:
TEventStatus) of
object;
property OnBeginTransComplete:
TBeginTransCompleteEvent;
TConnectErrorEvent
= procedure(Connection: TADOConnection;
Error: Error;
var EventStatus:
TEventStatus) of object;
property OnCornmitTransComplete:
TConnectErrorEvent;
вызываются после начала и фиксации
транзакции. Свойство
type TIsolationLevel
= (ilUnspecified, ilChaos, ilReadUncommitted, ilBrowse,
ilCursorStability, ilReadCorranitted, ilRepeatableRead,
ilSerializable, illsolated);
property IsolationLevel:
TIsolationLevel;
позволяет задать уровень изоляции транзакции:
- IlUnspecif led — уровень изоляции
не задается;
- Iichaos — изменения более защищенных
транзакций не перезаписываются данной транзакцией;
- IlReadUncommitted — незафиксированные
изменения других транзакций видимы;
- IlBrowse — незафиксированные
изменения других транзакций видимы;
- IlCursorStability — изменения других
транзакций видимы только после фиксации;
- IlReadCommitted — изменения
других транзакций видимы только после фиксации;
- IlRepeatableRead — изменения других
транзакций не видимы, но доступны при обновлении данных;
- ISerializable — транзакция выполняется
изолированно от других транзакций;
- Ilisolated — транзакция выполняется
изолированно от других транзакций.
Свойство
TXactAttribute =
(xaCommitRetaining, xaAbortRetaining); property Attributes:
TXactAttributes;
задает способ управления транзакциями
при их фиксации и откате:
- xaCommitRetaining — после фиксации
очередной транзакции автоматически начинается выполнение
новой;
- xaAbortRetaining — после отката
очередной транзакции автоматически начинается выполнение
новой.
|