Bde.DBTables.TBDEDataSet.FetchAll
Delphi
procedure FetchAll;
C++
void __fastcall FetchAll(void);
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
procedure function |
public | Bde.DBTables.pas Bde.DBTables.hpp |
Bde.DBTables | TBDEDataSet |
説明
現在のカーソル位置からデータベースの最後までのすべてのレコードを取り出して,ローカルに格納します。
FetchAll メソッドを呼び出すと,キャッシュアップデートを使用するときのネットワークトラフィックを減らすことができます。FetchAll は CheckBrowseMode を呼び出して未処理の変更をすべて登録してから,現在のカーソル位置からデータベースの最後までのすべてのレコードを取り出して,ローカルに格納します。
通常,キャッシュアップデートが使用可能なとき,トランザクションは表示のために必要なだけのデータしか取り出しません。フェッチ処理は実行するたびに,新しい読み出し専用トランザクションを作成します。ネットワークトラフィックを減らすためには,FetchAll を呼び出して 1 つのトランザクションですべてのデータを取り出すと効果的です。
メモ: FetchAll を使用することが常に適当であるとは限りません。たとえばアプリケーションが,同時に多数のクライアントによって使用されているデータベースにアクセスし,同一のレコードの更新の競合が頻繁に起こる場合,一度にすべてのレコードを取り出すことは必ずしも有効ではありません。取り出したレコードの一部がほかのアプリケーションによって変更されている可能性があるからです。ネットワークトラフィックを減らす利点とレコード競合を減らす必要性を常に比較検討してください。