FireDAC.Stan.Option.TFDTxOptions.Isolation

提供: RAD Studio API Documentation
移動先: 案内検索

Delphi

property Isolation: TFDTxIsolation read FIsolation write SetIsolation  default xiUnspecified;

C++

__property TFDTxIsolation Isolation = {read=FIsolation, write=SetIsolation, default=0};

プロパティ

種類 可視性 ソース ユニット
property published
FireDAC.Stan.Option.pas
FireDAC.Stan.Option.hpp
FireDAC.Stan.Option TFDTxOptions


説明

FireDAC によって管理されるトランザクションの、トランザクション排他レベルを示します。

Isolation プロパティを使用すると、現在のセッションでの次のトランザクションのトランザクション排他レベルを指定することができます。排他レベルを変更しても、現在アクティブであるトランザクションには影響はありません。デフォルト値は xiUnspecified です。 

ユーザーがデータベースで使用されるデフォルトとは異なる分離レベルを使用したい場合は、コンポーネントの設定またはコードで明示的に設定する必要があります。 

Isolation プロパティ値は DBMS 非依存で、より近いネイティブ DBMS 排他レベルに変換されます。

レベル 

説明 

xiUnspecified

デフォルト DBMS 排他レベルを使用。  これが Isolation プロパティのデフォルト値です。 

xiDirtyRead

他の同時トランザクションによってデータベースに行われたコミット前の変更の読み込みを許可します。コミットされていない変更は、恒久的なものではなく、いつでもロールバックされる(元に戻す)可能性があります。 このレベルでは、トランザクションは、他のトランザクションの影響から最低限、隔離されます。  

xiReadCommitted

他の同時トランザクションによってデータベースに行われたコミット済み(永続的な)変更の読み込みを許可します。

xiRepeatableRead

データベースのシングルの単発読み込みを許可します。トランザクションは、他の同時トランザクションによって行われた、その後の変更を見ることはできません。この排他レベルでは、トランザクションがいったんレコードを読み取ると、そのレコードのビューは変化しないことが保証されます(自分自身でレコードを編集しない限り)。 このレベルでは、トランザクションは、他のトランザクションで行われる変更から最も隔離されます。  

xiSnapshot

開始時に存在するコミット済みの最終値の読み込みを許可します。 この排他レベルでは、トランザクションで実行されるすべてのクエリが、トランザクションの開始時のデータベースの状態に基づいて、データベースの同じスナップショットを参照していることが保証されます。  

xiSerializible 

最高レベルの排他レベルで、トランザクションが完了するまで他のユーザーがデータを更新するのを抑制します。 この排他レベルは、すべてのトランザクションが排他的な方法で発生することを指定し、すべてのコミット済みトランザクションに対して、シリアルなトランザクション実行をエミュレートします。トランザクションは、1 つ1 つ順番に実行されたかのようになります。

関連項目

サンプル