バッチ更新モードでのデータセットのオープン
ADO データセットをバッチ更新モードで開くには、次の条件を満たしている必要があります。
- コンポーネントの CursorType プロパティが ctKeySet(デフォルトのプロパティ値)または ctStatic になっていること。
- LockType プロパティが ltBatchOptimistic であること。
- コマンドが SELECT クエリであること。
データセット コンポーネントをアクティブにする前に、CursorType プロパティと LockType プロパティを上記のように設定します。コンポーネントの CommandText プロパティ(TADODataSet の場合)または SQL プロパティ(TADOQuery の場合)に SELECT 文を割り当てます。TADOStoredProc コンポーネントの場合は、結果セットを返すストアド プロシージャの名前を ProcedureName に設定します。これらのプロパティは、設計時に[オブジェクト インスペクタ]を使って設定するか、実行時にプログラムで設定することができます。次の例では、バッチ更新モードのための TADODataSet コンポーネントの準備を示します。
with ADODataSet1 do begin CursorLocation := clUseClient; CursorType := ctStatic; LockType := ltBatchOptimistic; CommandType := cmdText; CommandText := 'SELECT * FROM Employee'; Open; end;
ADODataSet1->CursorLocation = clUseClient; ADODataSet1->CursorType = ctStatic; ADODataSet1->LockType = ltBatchOptimistic; ADODataSet1->CommandType = cmdText; ADODataSet1->CommandText = "SELECT * FROM Employee";
データセットをバッチ更新モードで開いた後は、データに加えた変更はすべて、ベース テーブルに直接適用されるのではなく、キャッシュに格納されます。