Bde.DBTables.TBDEDataSet.CachedUpdates
Delphi
property CachedUpdates: Boolean read FCachedUpdates write SetCachedUpdates default False;
C++
__property bool CachedUpdates = {read=FCachedUpdates, write=SetCachedUpdates, default=0};
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
property | published | Bde.DBTables.pas Bde.DBTables.hpp |
Bde.DBTables | TBDEDataSet |
説明
キャッシュアップデートがデータセットで使用可能かどうかを指定します。
CachedUpdates プロパティは,データセットでキャッシュアップデートを使用可能あるいは使用不可にします。CachedUpdates が true の場合,キャッシュアップデートは使用可能です。CachedUpdates が false の場合,キャッシュアップデートは使用不可です。
キャッシュアップデートが使用可能な場合,データセットに行う更新(変更内容の登録,新しいレコードの挿入,レコードの削除など)はデータセットの基になるデータベーステーブルに直接書き込まれるのではなく,クライアントマシンの内部キャッシュに格納されます。変更が完了したときに,アプリケーションはキャッシュしたすべての変更を 1 つのトランザクションのコンテキストでデータベースに書き込みます。
キャッシュアップデートは,2 層クライアント/サーバーシステムのクライアントアプリケーションで特に便利です。キャッシュアップデートを使用可能にする利点を以下に示します。
トランザクションの回数が少なく時間も短い
ネットワークトラフィックを最小限にできる
キャッシュアップデートを使用可能にすると以下のような不具合が生じる場合もあります。
ユーザーがデータのローカルコピーを編集している間に別のアプリケーションが実際のデータにアクセスして変更できるので,キャッシュアップデートをデータベースに適用したときに更新の競合が起こる
キャッシュアップデートがデータベースに適用されるまで,アプリケーションが加えたデータの変更にほかのアプリケーションがアクセスできない
メモ: キャッシュアップデートを使用するかわりに,クライアントデータセットおよびプロバイダコンポーネントを使用すると,アプリケーションは,より高い自由度で同様の効果を得ることができます。
メモ: キャッシュされた更新を有効にすると,データ変更がローカルメモリに格納されます。記憶媒体は,Paradox 形式のメモリ内テーブルです。アプリケーションがほかのデータベースタイプを使用するように設計されているにしても,Paradox 用ボーランドデータベースエンジン(BDE)ドライバの NET DIR パラメータを設定する必要があります。これはアプリケーションをネットワーク環境で実行するという意味になります。このパラメータを適切に設定できないと,EDBEngineError 例外を発生させかねません。NET DIR を設定する方法には 2 とおりあります。1 つは,BDE 環境設定ユーティリティの BDE Administrator を使用する方法です(BDE Administrator オンラインヘルプを参照)。もう 1 つは,TSession の NetFileDir プロパティを使用する方法です。